Connect-DataGatewayServiceAccount
Conéctese al servicio Puerta de enlace de datos.
Sintaxis
User (Es el valor predeterminado).
Connect-DataGatewayServiceAccount
[-Environment <PowerBIEnvironmentType>]
[<CommonParameters>]
ServicePrincipal
Connect-DataGatewayServiceAccount
-ApplicationId <String>
-ClientSecret <SecureString>
[-Tenant <String>]
[-Environment <PowerBIEnvironmentType>]
[<CommonParameters>]
ServicePrincipalCertificate
Connect-DataGatewayServiceAccount
-ApplicationId <String>
-CertificateThumbprint <String>
[-Tenant <String>]
[-Environment <PowerBIEnvironmentType>]
[<CommonParameters>]
Description
Conéctese al servicio Puerta de enlace de datos con una cuenta de usuario o de entidad de servicio (secreto de aplicación o certificado).
En el caso de las cuentas de usuario, se aprovecha una aplicación First-Party de Azure Active Directory (AAD) para la autenticación.
Siga la sección "Creación de una aplicación de Azure AD" para crear una cuenta de entidad de servicio.
Para cerrar la sesión, llame a Disconnect-DataGatewayServiceAccount.
Ejemplos
Creación de una aplicación de Azure AD
Para crear una aplicación de Azure AD compatible con los cmdlets de DataGateway*, ejecute el siguiente script que usa el módulo 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
Después de ejecutar el script anterior, hay algunos pasos más para completar:
Cree un nuevo secreto (si no ha creado uno con el script anterior) o use un certificado. Para obtener más información, consulte certificados y secretos.
Conceda el consentimiento del administrador a la aplicación con los permisos configurados si especificó el argumento
RequiredResourceAccess. Para obtener más información, consulte Conceder consentimiento del administrador en Registros de aplicaciones.
Ejemplo 1
PS C:\> Connect-DataGatewayServiceAccount
Al iniciar sesión mediante la autenticación de usuario en la nube pública, se mostrará un mensaje para recopilar credenciales.
Ejemplo 2
PS C:\> Connect-DataGatewayServiceAccount -Environment China
Al iniciar sesión mediante la autenticación de usuario en la nube de China, se mostrará un mensaje para recopilar credenciales.
Ejemplo 3
PS C:\> Connect-DataGatewayServiceAccount -ApplicationId b5fde143-722c-4e8d-8113-5b33a9291468 -ClientSecret (Read-Host "Enter client secret" -AsSecureString) -Tenant 4E6F731E-FD8D-496D-8AF8-349ABC5F62E0
Inicie sesión con un servicio en el inquilino especificado en la nube pública; se mostrará una solicitud desde Read-Host para leer el secreto de la aplicación cliente.
Ejemplo 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
Inicia sesión con un servicio en el inquilino especificado en la nube pública mediante un secreto de cliente almacenado de forma segura en un archivo para que el cmdlet no sea interactivo.
Ejemplo 5
PS C:\> Connect-DataGatewayServiceAccount -ApplicationId b5fde143-722c-4e8d-8113-5b33a9291468 -CertificateThumbprint 38DA4BED389A014E69A6E6D8AE56761E85F0DFA4 -Tenant 4E6F731E-FD8D-496D-8AF8-349ABC5F62E0
Inicia sesión con una entidad de servicio en el inquilino especificado con un certificado instalado en la nube pública. El certificado debe estar instalado en el almacén de certificados CurrentUser o LocalMachine (LocalMachine requiere acceso de administrador) con una clave privada instalada.
Parámetros
-ApplicationId
Identificador de aplicación de Azure Active Directory (AAD) (también conocido como id. de cliente) que se usará con una cuenta de entidad de servicio.
Para más información sobre las aplicaciones y las entidades de servicio, consulte Objetos de aplicación y entidad de servicio en Azure Active Directory.
Propiedades del parámetro
| Tipo: | String |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
ServicePrincipal
| Posición: | Named |
| Mandatory: | True |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
ServicePrincipalCertificate
| Posición: | Named |
| Mandatory: | True |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-CertificateThumbprint
Huella digital de un certificado instalado asociado a una aplicación de Azure Active Directory (AAD). El certificado debe estar instalado en los almacenes de certificados personales CurrentUser o LocalMachine (LocalMachine requiere un mensaje de administrador para acceder) con una clave privada instalada.
Propiedades del parámetro
| Tipo: | String |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
ServicePrincipalCertificate
| Posición: | Named |
| Mandatory: | True |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-ClientSecret
Secreto de cliente de la aplicación para la entidad de servicio.
Propiedades del parámetro
| Tipo: | SecureString |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
ServicePrincipal
| Posición: | Named |
| Mandatory: | True |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-Environment
Entorno en la nube con el que conectarse. El valor predeterminado es Público.
Propiedades del parámetro
| Tipo: | PowerBIEnvironmentType |
| Valor predeterminado: | None |
| Valores aceptados: | Public, Germany, USGov, China, USGovHigh, USGovMil |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-Tenant
Nombre de inquilino o identificador de inquilino que contiene la cuenta de entidad de servicio. Si no se especifica, se usa el inquilino de COMMON.
Propiedades del parámetro
| Tipo: | String |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
| Alias: | Id del inquilino |
Conjuntos de parámetros
ServicePrincipal
| Posición: | Named |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
ServicePrincipalCertificate
| Posición: | Named |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
CommonParameters
Este cmdlet admite los parámetros comunes: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction y -WarningVariable. Para obtener más información, vea about_CommonParameters.