Connect-DataGatewayServiceAccount
Connectez-vous au service de passerelle de données.
Syntaxe
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
Connectez-vous au service de passerelle de données avec un compte d’utilisateur ou de principal de service (secret d’application ou certificat).
Pour les comptes d’utilisateur, une application First-Party Azure Active Directory (AAD) est exploitée pour l’authentification.
Suivez la section « Création d’une application Azure AD » pour créer un compte de principal de service.
Pour vous déconnecter, appelez Disconnect-DataGatewayServiceAccount.
Exemples
Création d’une application Azure AD
Pour créer une application Azure AD compatible avec les applets de commande DataGateway*
, exécutez le script suivant qui utilise le module 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
Après avoir exécuté le script ci-dessus, vous devez effectuer quelques étapes supplémentaires :
Créez un secret (si vous n’en avez pas créé un avec le script ci-dessus) ou utilisez un certificat. Pour plus d’informations, consultez Certificats et secrets.
Accordez le consentement administrateur pour l’application avec les autorisations configurées si vous avez spécifié l’argument
RequiredResourceAccess
. Pour plus d’informations, consultez Accorder le consentement administrateur dans les inscriptions d’applications.
Exemple 1
PS C:\> Connect-DataGatewayServiceAccount
Les journaux d’activité utilisant l’authentification utilisateur sur le cloud public s’affichent pour collecter les informations d’identification.
Exemple 2
PS C:\> Connect-DataGatewayServiceAccount -Environment China
Les journaux d’activité utilisant l’authentification utilisateur sur le cloud de Chine s’affichent pour collecter les informations d’identification.
Exemple 3
PS C:\> Connect-DataGatewayServiceAccount -ApplicationId b5fde143-722c-4e8d-8113-5b33a9291468 -ClientSecret (Read-Host "Enter client secret" -AsSecureString) -Tenant 4E6F731E-FD8D-496D-8AF8-349ABC5F62E0
Les journaux d’activité à l’aide d’un service dans le locataire spécifié sur le cloud public s’affichent à partir de Read-Host
pour lire la clé secrète de votre application cliente.
Exemple 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
Se connecte à l’utilisation d’un service dans le locataire spécifié sur le cloud public à l’aide d’un secret client stocké en toute sécurité dans un fichier pour rendre l’applet de commande non interactive.
Exemple 5
PS C:\> Connect-DataGatewayServiceAccount -ApplicationId b5fde143-722c-4e8d-8113-5b33a9291468 -CertificateThumbprint 38DA4BED389A014E69A6E6D8AE56761E85F0DFA4 -Tenant 4E6F731E-FD8D-496D-8AF8-349ABC5F62E0
Se connecte à l’aide d’un principal de service dans le locataire spécifié avec un certificat installé dans le cloud public. Le certificat doit être installé dans le magasin de certificats CurrentUser ou LocalMachine (LocalMachine nécessite un accès administrateur) avec une clé privée installée.
Paramètres
-ApplicationId
ID d’application Azure Active Directory (AAD) (également appelé ID client) à utiliser avec un compte de principal de service.
Pour plus d’informations sur les applications et les principaux de service, consultez objets application et principal de service dans Azure Active Directory.
Type: | String |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-CertificateThumbprint
Empreinte numérique du certificat d’un certificat installé associé à une application Azure Active Directory (AAD). Le certificat doit être installé dans les magasins de certificats personnels CurrentUser ou LocalMachine (LocalMachine nécessite une invite d’administrateur pour accéder) avec une clé privée installée.
Type: | String |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-ClientSecret
Clé secrète client d’application pour le principal de service.
Type: | SecureString |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Environment
Environnement cloud auquel se connecter. La valeur par défaut est Public.
Type: | PowerBIEnvironmentType |
Valeurs acceptées: | Public, Germany, USGov, China, USGovHigh, USGovMil |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Tenant
Nom du locataire ou ID de locataire contenant le compte de principal de service. S’il n’est pas spécifié, le locataire COMMON
est utilisé.
Type: | String |
Alias: | TenantId |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
Entrées
None
Sorties
Microsoft.DataMovement.Powershell.Abstractions.Interfaces.IPowerBIProfile