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>]
Description
사용자 또는 서비스 주체 계정(애플리케이션 비밀 또는 인증서)을 사용하여 Data Gateway 서비스에 연결합니다.
사용자 계정의 경우 AAD(Azure Active Directory) 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
서비스 주체 계정과 함께 사용할 AAD(Azure Active Directory) 애플리케이션 ID(클라이언트 ID라고도 함)입니다.
애플리케이션 및 서비스 주체에 대한 자세한 내용은 Azure Active Directory
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CertificateThumbprint
AAD(Azure Active Directory) 애플리케이션에 연결된 설치된 인증서의 인증서 지문입니다. 프라이빗 키가 설치된 CurrentUser 또는 LocalMachine 개인 인증서 저장소(LocalMachine에 액세스하려면 관리자 프롬프트 필요)에 인증서를 설치해야 합니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-ClientSecret
서비스 주체에 대한 애플리케이션 클라이언트 암호입니다.
형식: | SecureString |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Environment
연결할 클라우드 환경입니다. 기본값은 Public입니다.
형식: | PowerBIEnvironmentType |
허용되는 값: | Public, Germany, USGov, China, USGovHigh, USGovMil |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Tenant
서비스 주체 계정을 포함하는 테넌트 이름 또는 테넌트 ID입니다. 지정하지 않으면 COMMON
테넌트가 사용됩니다.
형식: | String |
별칭: | TenantId |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
입력
None
출력
Microsoft.DataMovement.Powershell.Abstractions.Interfaces.IPowerBIProfile