Security

為 Azure-SQL-DB 添加 Active Directory 使用者

  • August 29, 2017

我有一個活動目錄使用者 LDomain\LUser,我希望該使用者能夠連接到 Azure-Sql-DB。MS 使用的語法引發錯誤。

T-SQL:

CREATE USER [LDomain\LUser] FROM EXTERNAL PROVIDER

錯誤:

找不到主體“LDomain\LUser”或不支持此主體類型。

我只是在尋找添加 AD 使用者的腳本 - 沒有界面。我知道 AD 使用者存在於 Azure 中並已確認,但 Azure-Sql-DB 無法辨識它,或者此 T-SQL 無效 - 儘管這是來自他們的文件。

從與您的 Azure 訂閱聯合的外部 Azure Active Directory 實例預配使用者時,您需要使用為 Azure 訂閱創建的基礎“訪客”電子郵件地址,而不是“實際”電子郵件地址。

此處提到的 Microsoft 方案是“從其他 Azure AD 的本地或聯合域成員導入的成員”。

所以,而不是:

CREATE USER [your.user@example.com] FROM EXTERNAL PROVIDER

需要使用以下約定。這是 Microsoft 從另一個 Azure Active Directory 儲存來賓/聯合使用者的方式。

CREATE USER [your.user_example.com#EXT#@<yourAzureSubscriptionPrefix>.onmicrosoft.com] FROM EXTERNAL PROVIDER

或者,使用組使這更加直覺和易於管理。

  1. SqlUsersFromExternalDirectory在 Azure 訂閱的預設 Azure Active Directory 中創建一個組(例如)。
  2. 將要訪問 SQL Warehouse 或 DB 的外部使用者添加到組中。
  3. 將組添加為目標數據庫中的外部使用者

CREATE USER [SqlUsersFromExternalDirectory] FROM EXTERNAL PROVIDER

這很好用,外部使用者可以登錄,管理員可以授予權限等。

引用自:https://dba.stackexchange.com/questions/148325