Advertisement
Guest User

Untitled

a guest
Aug 11th, 2016
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
T-SQL 1.59 KB | None | 0 0
  1. -------------------------
  2. -- CREATE USER SCRIPT --
  3. -- v0.2 -----------------
  4.  
  5. USE [master]
  6.  
  7. DECLARE @boServiceAccountUsername nvarchar(200)
  8. DECLARE @boServiceAccountPassword nvarchar(200)
  9. DECLARE @SqlStatement nvarchar(200)
  10. DECLARE @CreateDBAccount bit
  11.  
  12. SET @boServiceAccountUsername = 'boServiceUser'
  13. SET @boServiceAccountPassword = '123'
  14.  
  15. /* Create server level user account if not exist. */
  16. If NOT EXISTS (SELECT 1 from master.dbo.syslogins WHERE loginname = @boServiceAccountUsername)
  17. BEGIN
  18.     SELECT @SqlStatement = 'CREATE LOGIN [' + @boServiceAccountUsername + '] WITH PASSWORD=''' + @boServiceAccountPassword + ''',
  19.             DEFAULT_DATABASE=[master],
  20.             DEFAULT_LANGUAGE=[us_english],
  21.             CHECK_EXPIRATION=OFF,
  22.             CHECK_POLICY=OFF'
  23.  
  24.     EXEC sp_executesql @SqlStatement
  25. END
  26.  
  27. USE [Bocks.Scheduler]
  28.  
  29. /* Create dabatabse level user account if not exist and add roles to it. */
  30. If NOT EXISTS (SELECT 1 from sys.database_principals WHERE name = @boServiceAccountUsername)
  31. BEGIN
  32.     SELECT @SqlStatement = 'CREATE USER [' + @boServiceAccountUsername + '] FOR LOGIN [' + @boServiceAccountUsername + '] WITH DEFAULT_SCHEMA=[Scheduler]'
  33.     EXEC sp_executesql @SqlStatement
  34.  
  35.     /* Grant roles to user */
  36.     SELECT @SqlStatement = 'ALTER ROLE [db_datareader] ADD MEMBER [' + @boServiceAccountUsername + ']'
  37.     EXEC sp_executesql @SqlStatement
  38.     SELECT @SqlStatement = 'ALTER ROLE [db_datawriter] ADD MEMBER [' + @boServiceAccountUsername + ']'
  39.     EXEC sp_executesql @SqlStatement
  40.     SELECT @SqlStatement = 'GRANT CONNECT TO [' + @boServiceAccountUsername + '] AS [dbo]'
  41.     EXEC sp_executesql @SqlStatement
  42. END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement