Zugriff auf Azure SQL PaaS gewähren

Zugriff auf Azure SQL PaaS gewähren

Wenn Sie Zugang zu Azure SQL PaaS-Datenbank gewähren müssen, können Sie folgende T-SQL-Skripte verwenden.

Melden Sie sich bei Azure-Datenbank an und führen Sie die Abfrage dagegen aus. Dies wird Benutzer in der Datenbank erstellen (Benutzer ist von Azure Active Directory) und gewährt ihm Datareader Rolle.

CREATE USER [user1\@domain.onmicrosoft.com] FROM EXTERNAL PROVIDER;
EXEC sp_addrolemember db_datareader, [user1\@domain.onmicrosoft.com];

 

Wenn Sie die Azure AD nicht benötigen, können Sie einen SQL-User erstellen

CREATE LOGIN readonlylogin WITH password='1231!#ASDF!a'; --Tut dies auf Master DB
CREATE USER readonlyuser FROM LOGIN readonlylogin; --Tut dies auf Ziel-DB
EXEC sp_addrolemember db_datareader, [readonlyuser]; --Tut dies auf Ziel-DB

 

Überprüfen Sie die Berechtigungen

SELECT prm.permission_name
   , prm.class_desc
   , prm.state_desc
   , p2.name as 'Database role'
   , p3.name as 'Additional database role' 
FROM sys.database_principals AS p
JOIN sys.database_permissions AS prm
   ON p.principal_id = prm.grantee_principal_id
   LEFT JOIN sys.database_principals AS p2
   ON prm.major_id = p2.principal_id
   LEFT JOIN sys.database_role_members r
   ON p.principal_id = r.member_principal_id
   LEFT JOIN sys.database_principals AS p3
   ON r.role_principal_id = p3.principal_id
WHERE p.name = 'user1\@domain.onmicrosoft.com';

 

Auch können Sie alle Benutzer aus der Datenbank und einige Details zu überprüfen

SELECT * FROM sys.database_principals

 

Führen Sie eine Abfrage als neuen Benutzer aus

EXECUTE AS USER = 'user1';  
SELECT * FROM [SalesLT].[ProductCategory];

 

 

Tags: ms sql server (de), azure (de)

Drucken