DATABASE ulaşım yetkisi olan kullanıcı oluşturma
-- Değişkenlerin tanımlanması
DECLARE @DatabaseName NVARCHAR(128) = 'DATABASENAME'; -- Buraya veritabanı adını girin
DECLARE @Password NVARCHAR(128) = '123456'; -- Buraya şifreyi girin
DECLARE @LoginAndUserName NVARCHAR(128) = 'mysa'; -- Buraya login ve kullanıcı adını girin
-- 1. Login oluşturulması
DECLARE @Sql NVARCHAR(MAX);
SET @Sql = 'CREATE LOGIN [' + @LoginAndUserName + '] WITH PASSWORD=N''' + @Password + ''', DEFAULT_DATABASE=[' + @DatabaseName + '], DEFAULT_LANGUAGE=[us_english], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF';
EXEC sp_executesql @Sql;
-- 2. Login için veritabanında kullanıcı oluşturulması
SET @Sql = 'USE ' + @DatabaseName + '; CREATE USER [' + @LoginAndUserName + '] FOR LOGIN [' + @LoginAndUserName + ']';
EXEC sp_executesql @Sql;
-- 3. Kullanıcıya tüm yetkilerin verilmesi (db_owner rolü eklenmesi)
SET @Sql = 'USE ' + @DatabaseName + '; ALTER ROLE db_owner ADD MEMBER [' + @LoginAndUserName + ']';
EXEC sp_executesql @Sql;
-- 4. Login'in varsayılan veritabanının ayarlanması
SET @Sql = 'ALTER LOGIN [' + @LoginAndUserName + '] WITH DEFAULT_DATABASE = [' + @DatabaseName + ']';
EXEC sp_executesql @Sql;
-- 5. Veritabanının login için görülebilir hale getirilmesi
SET @Sql = 'USE master; GRANT CONNECT ANY DATABASE TO [' + @LoginAndUserName + ']';
EXEC sp_executesql @Sql;
-- 6. Kullanıcıya veritabanına bağlanma izni verilmesi
SET @Sql = 'USE ' + @DatabaseName + '; GRANT CONNECT TO [' + @LoginAndUserName + ']';
EXEC sp_executesql @Sql;
Hiç yorum yok