透過 HTTPS 進行驗證
適用於: ✅Microsoft網狀架構✅Azure 數據總管
若要透過 HTTPS 與資料庫互動,提出要求的主體必須使用 HTTP Authorization
要求標頭進行驗證。
語法
Authorization:
Bearer
AccessToken
深入瞭解 語法慣例。
參數
姓名 | 類型 | 必要 | 描述 |
---|---|---|---|
AccessToken | string |
✔️ | 服務Microsoft Entra 存取令牌。 |
取得存取權杖
有許多不同的方法來取得Microsoft Entra 存取令牌。 若要深入瞭解,請參閱 使用者驗證 和 應用程式驗證。
使用 Azure CLI 取得用戶主體的存取令牌
下列步驟會傳回發出要求之用戶主體的存取令牌。 請確定用戶主體可以存取您計劃存取的資源。 如需詳細資訊,請參閱角色型存取控制。
登入 Azure CLI。
az login --output table
尋找數據列
Default
為true
的數據列。 確認該數據列中的訂用帳戶是您要建立Microsoft Entra 存取令牌的訂用帳戶。 若要尋找訂用帳戶資訊,請參閱取得 Azure 入口網站 中的訂用帳戶和租用戶標識碼。 如果您需要切換至不同的訂用帳戶,請執行下列其中一個命令。az account set --subscription <SUBSCRIPTION_ID>
az account set --name "<SUBSCRIPTION_NAME>"
執行下列命令以取得存取令牌。
az account get-access-token \ --resource "https://api.kusto.windows.net" \ --query "accessToken"
使用 Azure CLI 取得服務主體的存取令牌
Microsoft Entra 服務主體代表需要存取資源的應用程式或服務,通常是在非互動式案例中,例如 API 呼叫。 下列步驟會引導您建立服務主體並取得此主體的持有人令牌。
登入 Azure CLI。
az login --output table
尋找數據列
Default
為true
的數據列。 確認該數據列中的訂用帳戶是您要在其中建立服務主體的訂用帳戶。 若要尋找訂用帳戶資訊,請參閱取得 Azure 入口網站 中的訂用帳戶和租用戶標識碼。 如果您需要切換至不同的訂用帳戶,請執行下列其中一個命令。az account set --subscription <SUBSCRIPTION_ID>
az account set --name "<SUBSCRIPTION_NAME>"
建立服務主體。 下列命令會建立Microsoft Entra 服務主體,並傳回服務主體的
appId
、displayName
password
和tenantId
。az ad sp create-for-rbac -n <SERVICE_PRINCIPAL_NAME>
將數據庫存取權授與應用程式主體。 例如,在資料庫的內容中,使用下列命令將主體新增為使用者。
.add database <DATABASE> users ('aadapp=<appId>;<tenantId>')
若要瞭解不同的角色以及如何指派角色,請參閱 安全性角色管理。
傳送 HTTP 要求以要求存取令牌。 將、
<appId>
和<password>
取代<tenantId>
為從上一個命令取得的值。 此要求會傳回包含存取令牌的 JSON 物件,您可以在要求中做為標頭的值Authorization
。curl -X POST https://login.microsoftonline.com/<tenantId>/oauth2/token \ -F grant_type=client_credentials \ -F client_id=<appId> \ -F client_secret=<password> \ -F resource=https://api.kusto.windows.net
相關內容
- 驗證概觀
- 若要瞭解如何執行代理者 (OBO) 驗證或單頁應用程式 (SPA) 驗證,請參閱 如何使用 Microsoft 驗證連結庫 (MSAL) 進行驗證。