Connect-DataGatewayServiceAccount
聯機到數據閘道服務。
語法
Connect-DataGatewayServiceAccount
[-Environment <PowerBIEnvironmentType>]
[<CommonParameters>]
Connect-DataGatewayServiceAccount
-ApplicationId <String>
-ClientSecret <SecureString>
[-Tenant <String>]
[-Environment <PowerBIEnvironmentType>]
[<CommonParameters>]
Connect-DataGatewayServiceAccount
-ApplicationId <String>
-CertificateThumbprint <String>
[-Tenant <String>]
[-Environment <PowerBIEnvironmentType>]
[<CommonParameters>]
Description
使用使用者或服務主體帳戶連線到數據閘道服務(應用程式秘密或憑證)。
針對用戶帳戶,會利用 Azure Active Directory (AAD) First-Party 應用程式進行驗證。
請遵循「建立 Azure AD 應用程式」來建立服務主體帳戶。
若要註銷呼叫 Disconnect-DataGatewayServiceAccount。
範例
建立 Azure AD 應用程式
若要建立與 DataGateway*
Cmdlet 相容的 Azure AD 應用程式,請執行下列使用 Microsoft.Graph
模組的腳本
# In the Azure portal these will show as the Permission names "Tenant.Read.All" and "Tenant.ReadWrite.All" with the "Application" type under the Power BI Service API
$resourceAccessItems = @(
@{Id="654b31ae-d941-4e22-8798-7add8fdf049f";Type="Role"},
@{Id="28379fa9-8596-4fd9-869e-cb60a93b5d84";Type="Role"}
);
# In the Azure portal the ResourceAppId below is the Power BI Service
$resourceAccess = @{ResourceAppId="00000009-0000-0000-c000-000000000000"; ResourceAccess=$resourceAccessItems};
# Create the application, if you do not want the application to have full permissions remove the -RequiredResourceAccess argument
$newApp = New-MgApplication -DisplayName "DataGatewayApplication" -RequiredResourceAccess $resourceAccess
# Optionally, create a secret for the new application
$applicationPasswordRequestOptions = @{PasswordCredential=@{DisplayName="ClientSecret"}}
$applicationPasswordResponse = Add-MgApplicationPassword -ApplicationId $newApp.Id -BodyParameter $applicationPasswordRequestOptions
$clientSecret = $pwd.SecretText | ConvertTo-SecureString -AsPlainText -Force
執行上述腳本之後,還有一些步驟可以完成:
建立新的秘密(如果您未使用上述腳本建立密碼),或使用憑證。 如需詳細資訊,請參閱
憑證和秘密。 如果您指定了
RequiredResourceAccess
自變數,請以已設定的許可權,為應用程式授與管理員同意。 如需詳細資訊,請參閱 在應用程式註冊中授與系統管理員同意。
範例 1
PS C:\> Connect-DataGatewayServiceAccount
針對公用雲端使用使用者驗證登入時,將會顯示一個提示以收集認證。
範例 2
PS C:\> Connect-DataGatewayServiceAccount -Environment China
針對中國雲端使用使用者驗證登入時,將會顯示收集認證的提示。
範例 3
PS C:\> Connect-DataGatewayServiceAccount -ApplicationId b5fde143-722c-4e8d-8113-5b33a9291468 -ClientSecret (Read-Host "Enter client secret" -AsSecureString) -Tenant 4E6F731E-FD8D-496D-8AF8-349ABC5F62E0
針對公用雲端使用指定租使用者中的服務登入,系統會從 Read-Host
顯示提示,以讀取用戶端應用程式密碼。
範例 4
PS C:\> ConvertFrom-SecureString -SecureString (Read-Host "Enter client secret" -AsSecureString) | Out-File -FilePath .\encryptedClientSecret.txt
PS C:\> $secureClientSecret = (cat .\encryptedClientSecret.txt | ConvertTo-SecureString)
PS C:\> Connect-DataGatewayServiceAccount -ApplicationId b5fde143-722c-4e8d-8113-5b33a9291468 -ClientSecret $secureClientSecret -Tenant 4E6F731E-FD8D-496D-8AF8-349ABC5F62E0
使用指定租使用者中的服務,以安全儲存在檔案中的用戶端秘密,將 Cmdlet 設為非互動式,來登入。
範例 5
PS C:\> Connect-DataGatewayServiceAccount -ApplicationId b5fde143-722c-4e8d-8113-5b33a9291468 -CertificateThumbprint 38DA4BED389A014E69A6E6D8AE56761E85F0DFA4 -Tenant 4E6F731E-FD8D-496D-8AF8-349ABC5F62E0
使用指定租使用者中的服務主體,將已安裝的憑證登入公用雲端。 憑證必須安裝在 CurrentUser 或 LocalMachine 證書存儲中(LocalMachine 需要系統管理員存取權),並安裝私鑰。
參數
-ApplicationId
要搭配服務主體帳戶使用的 Azure Active Directory (AAD) 應用程式識別碼(也稱為用戶端標識符)。
如需應用程式和服務主體的詳細資訊,請參閱 Azure Active Directory 中的應用程式和服務主體物件。
類型: | String |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-CertificateThumbprint
與 Azure Active Directory (AAD) 應用程式相關聯的已安裝憑證憑證指紋。 憑證必須安裝在已安裝私鑰的 CurrentUser 或 LocalMachine 個人證書存儲中(LocalMachine 需要系統管理員提示才能存取)。
類型: | String |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-ClientSecret
服務主體的應用程式客戶端密碼。
類型: | SecureString |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-Environment
要連線的雲端環境。 預設值為 Public。
類型: | PowerBIEnvironmentType |
接受的值: | Public, Germany, USGov, China, USGovHigh, USGovMil |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Tenant
包含服務主體帳戶的租用戶名稱或租使用者標識碼。 如果未指定,則會使用 COMMON
租使用者。
類型: | String |
別名: | TenantId |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
輸入
None
輸出
Microsoft.DataMovement.Powershell.Abstractions.Interfaces.IPowerBIProfile