Connect-DataGatewayServiceAccount
Data Gateway サービスに接続します。
構文
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>]
説明
ユーザーまたはサービス プリンシパル アカウント (アプリケーション シークレットまたは証明書) を使用して Data Gateway サービスに接続します。
ユーザー アカウントの場合、認証には Azure Active Directory (AAD) First-Party アプリケーションが利用されます。
「Azure AD アプリケーションの作成」に従って、サービス プリンシパル アカウントを作成します。
ログアウトするには、Disconnect-DataGatewayServiceAccount を呼び出します。
例
Azure AD アプリケーションの作成
DataGateway*
コマンドレットと互換性のある 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
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
ファイルに安全に格納されたクライアント シークレットを使用して、指定されたテナントのサービスをパブリック クラウドに対して使用してログインし、コマンドレットを非対話型にします。
例 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) アプリケーション ID (クライアント ID とも呼ばれます)。
アプリケーションとサービス プリンシパルの詳細については、「Azure Active Directoryのアプリケーション オブジェクトとサービス プリンシパル オブジェクトの
型: | String |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-CertificateThumbprint
Azure Active Directory (AAD) アプリケーションに関連付けられているインストール済み証明書の証明書拇印。 証明書は、CurrentUser または LocalMachine の個人用証明書ストアにインストールする必要があります (LocalMachine には、アクセスするための管理者プロンプトが必要です)。秘密キーがインストールされています。
型: | String |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-ClientSecret
サービス プリンシパルのアプリケーション クライアント シークレット。
型: | SecureString |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Environment
接続するクラウド環境。 既定値は Public です。
型: | PowerBIEnvironmentType |
指定可能な値: | Public, Germany, USGov, China, USGovHigh, USGovMil |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Tenant
サービス プリンシパル アカウントを含むテナント名またはテナント ID。 指定しない場合は、COMMON
テナントが使用されます。
型: | String |
Aliases: | TenantId |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
入力
None
出力
Microsoft.DataMovement.Powershell.Abstractions.Interfaces.IPowerBIProfile