Благодарим вас за то, что вы копаете немного глубже, чтобы избежать установки базы данных на TRUSTWORTHY ON
, что, к сожалению, является слишком распространенной практикой.
Те же шаги предпринимаются для подписи сборок и создания асимметричного ключа в master
из сборной DLL, а затем создания входа с этого асимметричного ключа. Единственное различие заключается в том, чтобы затем предоставить этому ключевому пользователю разрешение UNSAFE ASSEMBLY
вместо разрешения EXTERNAL ACCESS ASSEMBLY
.
Вы никогда не необходимости оба разрешения как UNSAFE ASSEMBLY
разрешения позволяет устанавливать сборки в EXTERNAL ACCESS
, хотя это не мешало бы иметь и другое.
Для получения дополнительной информации, в целом, относится к работе с SQLCLR, смотрите серию я пишу на сервере Центральной SQL (бесплатная регистрация требуется, чтобы прочитать их содержание):
Stairway to SQLCLR
Если вы используют Visual Studio/SSDT для развертывания/публикации вашего проекта SQLCLR, см. «Stairway to SQLCLR Level 7: Development and Security» в этой серии Stairway, поскольку он показывает технику для автоматизации создания Асимметричного ключа и входа на основе ключа, ни один из которых не может обрабатываться с использованием регулярных Объекты SSDT. Другой, еще более простой метод будет показан в следующей (чтобы быть опубликованной) статье.
Я обязательно прочитаю их, огромное спасибо! –