Как автоматически написать сценарий securables, присвоенного учетной записи SQL?

это позволяет Вам иметь различный доступ от различных URL с различной безопасностью.

Это позволяет Вам устанавливать "аутентификацию Windows" для Интранет, "Аутентификация Формы" для экстранет и "Аутентификации формы с позволяет анонимный" для Интернета.

параметры кэширования также отличаются в зависимости от зоны. Можно настроить кэш для поведения по-другому, в зависимости от которой зоны Вы.

До сих пор, те - основные отличия для различных зон (включая 3 различных общедоступных доступные URL).

8
задан TTT 1 September 2017 в 09:56
поделиться

2 ответа

Как и с любым другим сервером SQL, при использовании SQL Server Management Studio, если вы не знаете, как сделать конкретную вещь (например, просмотрели онлайн-книги, но не можете понять это), используйте «Действие сценария для создания» Окно запроса »из раскрывающегося списка« Сценарий »в диалоговых окнах очень полезно.

Используя инструменты графического интерфейса и затем просматривая полученный скрипт, вы можете быстро увидеть, как делать более сложные вещи, которые вы просто не можете сохранить в памяти, пока не делал их много раз.

-1
ответ дан 6 December 2019 в 02:25
поделиться

Вы можете изменить предложение where для выбора объекта по своему усмотрению. Требуется минимальная настройка, если вы ищете сценарий 2005 или 2008 года.

/ Осторожно! / Этот сценарий может быть немного опасным.

Declare @TableName varchar(100),
   @Sql nvarchar(500),
   @Result int,
   @UserName nvarchar(258)
   set @UserName= QuoteName('<your_user>')
Print @UserName

  DECLARE
     Your_Cursor cursor
     LOCAL
     FORWARD_ONLY
     OPTIMISTIC
  FOR  
/* if you only want one object to apply permissions to*/
-- select Name from Sysobjects where name = 'Your_TableName'
/*tables*/-- select name from sysobjects where xtype = 'U' order by name
/*views*/-- select name from sysobjects where xtype = 'V' order by name
/*StoredPs*/-- select name from sysobjects where xtype = 'P' order by name
/*UDFs*/-- select name from sysobjects where xtype = 'FN' order by name
/**********************************************************************/


OPEN Your_Cursor
FETCH NEXT from Your_Cursor into @TableName
while (@@fetch_status = 0)
   begin
/*Tables*/
--      set @Sql = N'Grant Select On '+ @TableName+ N' To ' + @UserName
--      set exec @Result = sp_executeSql @Sql
--      if @Result = 0
--        begin
--          Print 'Granted Select On '+ @TableName + ' by ' + @UserName
--        end
--      set @Sql = N'Grant Insert On '+ @TableName+ N' To ' + @UserName
--      set exec @Result = sp_executeSql @Sql
--      if @Result = 0
--        begin
--          Print 'Granted Insert On '+ @TableName + ' by ' + @UserName
--        end
--      set @Sql = N'Grant Update On '+ @TableName+ N' To '+ @UserName
--      set exec @Result = sp_executeSql @Sql
--      if @Result = 0
--        begin
--          Print 'Granted Update On '+ @TableName + ' by ' + @UserName
--        end
--      set @Sql = N'Grant Delete On '+ @TableName+ N' To '+ @UserName
--      set exec @Result = sp_executeSql @Sql
--      if @Result = 0
--        begin
--          Print 'Granted Delete On '+ @TableName + ' by ' + @UserName
--        end
/*Stored Procs and UDFs*/
--      set @Sql = N'Grant Execute On '+ @TableName+ N' To '+ @UserName
--      set exec @Result = sp_executeSql @Sql
--      if @Result = 0
--        begin
--          Print 'Granted Execute On '+ @TableName + ' by ' + @UserName
--        end
     FETCH NEXT from your_Cursor into @TableName
   end
CLOSE Your_Cursor
DEALLOCATE Your_Cursor
0
ответ дан 6 December 2019 в 02:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: