Connect-AipService

Azure Information Protectionに接続します。

構文

Connect-AipService
       [-Credential <PSCredential>]
       [-TenantId <Guid>]
       [<CommonParameters>]
Connect-AipService
       [-AccessToken <String>]
       [-TenantId <Guid>]
       [<CommonParameters>]
Connect-AipService
       [-EnvironmentName <AzureRmEnvironment>]
       [<CommonParameters>]

説明

Connect-AipService コマンドレットを使用すると、Azure Information Protectionに接続し、テナントの保護サービスの管理コマンドを実行できます。 このコマンドレットは、テナントを管理するパートナー企業も使用できます。

このモジュールの他のコマンドレットを実行する前に、このコマンドレットを実行する必要があります。

Azure Information Protectionに接続するには、次のいずれかのアカウントを使用します。

  • Office 365 テナントのグローバル管理者。
  • Azure AD テナントのグローバル管理者。 ただし、このアカウントは Microsoft アカウント (MSA) または別の Azure テナントにすることはできません。
  • Add-AipServiceRoleBasedAdministrator コマンドレットを使用して Azure Information Protectionに管理者権限が付与されているテナントのユーザー アカウント。
  • Azure Information Protection管理者、コンプライアンス管理者、またはコンプライアンス データ管理者の Azure AD 管理者ロール。

ヒント

資格情報の入力を求めず、資格情報 なしでこの機能を使用できないなどのエラー メッセージが表示される場合は、Windows 統合認証を使用するように Internet Explorer が構成されていることを確認します。

この設定が有効になっていない場合は、有効にして Internet Explorer を再起動してから、Information Protection サービスへの認証を再試行します。

例 1: Azure Information Protectionに接続し、ユーザー名とその他の資格情報の入力を求めるメッセージが表示される

PS C:\> Connect-AipService

このコマンドは、Azure Information Protectionから保護サービスに接続します。 これは、パラメーターなしでコマンドレットを実行することで、サービスに接続する最も簡単な方法です。

ユーザー名とパスワードの入力を求められます。 アカウントが多要素認証を使用するように構成されている場合は、別の認証方法の入力を求められた後、サービスに接続します。

多要素認証を使用するようにアカウントが構成されている場合は、この方法を使用して Azure Information Protectionに接続する必要があります。

例 2: 格納されている資格情報を使用して Azure Information Protectionに接続する

PS C:\>$AdminCredentials = Get-Credential "Admin@aadrm.contoso.com"
PS C:\> Connect-AipService -Credential $AdminCredentials

最初のコマンドは PSCredential オブジェクトを作成し、指定したユーザー名とパスワードを $AdminCredentials 変数に格納します。 このコマンドを実行すると、指定したユーザー名のパスワードの入力を求められます。

2 番目のコマンドは、$AdminCredentialsに格納されている資格情報を使用して Azure Information Protectionに接続します。 サービスから切断し、変数がまだ使用中に再接続する場合は、2 番目のコマンドを再実行するだけです。

例 3: トークンを使用して Azure Information Protectionに接続する

PS C:\ > Add-Type -Path "C:\Program Files\WindowsPowerShell\Modules\AIPService\1.0.0.1\Microsoft.IdentityModel.Clients.ActiveDirectory.dll"
PS C:\ > $clientId='90f610bf-206d-4950-b61d-37fa6fd1b224';
PS C:\ > $resourceId = 'https://api.aadrm.com/';
PS C:\ > $userName='admin@contoso.com';
PS C:\ > $password='Passw0rd!';
PS C:\ > $authority = "https://login.microsoftonline.com/common";
PS C:\ > $authContext = New-Object Microsoft.IdentityModel.Clients.ActiveDirectory.AuthenticationContext($authority);
PS C:\ > $userCreds = New-Object Microsoft.IdentityModel.Clients.ActiveDirectory.UserPasswordCredential($userName, $password);
PS C:\ > $authResult = [Microsoft.IdentityModel.Clients.ActiveDirectory.AuthenticationContextIntegratedAuthExtensions]::AcquireTokenAsync($authContext, $resourceId, $clientId, $userCreds).Result;
PS C:\ > Import-Module AIPService
PS C:\> Connect-AipService -AccessToken $authResult.AccessToken

この例では、AccessToken パラメーターを使用して Azure Information Protectionに接続する方法を示します。これにより、プロンプトなしで認証を行うことができます。 この接続方法では、クライアント ID 90f610bf-206d-4950-b61d-37fa6fd1b224 とリソース ID を *https://api.aadrm.com/*指定する必要があります。 接続が開いた後、必要なこのモジュールから管理コマンドを実行できます。

これらのコマンドが Azure Information Protectionに正常に接続されることを確認した後は、スクリプトなど、対話形式以外で実行できます。

図の目的で、この例では Passw0rd のパスワードでユーザー名admin@contoso.comを使用します。この接続方法を対話形式以外で使用する運用環境では、パスワードをクリア テキストに格納しないように、追加の方法を使用してパスワードをセキュリティで保護します。 たとえば、ConvertTo-SecureString コマンドを使用するか、Key Vaultを使用してパスワードをシークレットとして格納します。

例 4: サービス プリンシパル認証を使用してクライアント証明書を使用して Azure Information Protectionに接続する

PS C:\ > $Thumbprint = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
PS C:\ > $TenantId = 'yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy'
PS C:\ > $ApplicationId = '00000000-0000-0000-0000-00000000'
PS C:\> Connect-AipService -CertificateThumbprint $Thumbprint -ApplicationId $ApplicationId -TenantId $TenantId -ServicePrincipal

この例では、証明書ベースのサービス プリンシパル認証を使用して Azure アカウントに接続します。 認証に使用するサービス プリンシパルは、指定した証明書で作成する必要があります。

この例の前提条件:

  • AIPService PowerShell モジュールをバージョン 1.0.05 以降に更新する必要があります。
  • サービス プリンシパル認証を有効にするには、読み取り API アクセス許可 (Application.Read.All) をサービス プリンシパルに追加する必要があります。

詳細については、「必要な API アクセス許可 - MICROSOFT INFORMATION PROTECTION SDK」と「Azure PowerShellを使用して証明書を使用してサービス プリンシパルを作成する」を参照してください。

例 5: サービス プリンシパル認証を使用してクライアント シークレットを使用して Azure Information Protectionに接続する

PS C:\ > $TenantId = 'yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy'
PS C:\ > $ApplicationId = '00000000-0000-0000-0000-00000000'
PS C:\ > $Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $ApplicationId, $SecuredPassword
PS C:\ > Connect-AipService -Credential $Credential -TenantId $TenantId -ServicePrincipal

次の点に注意してください。

  • 1 つ目のコマンドではサービス プリンシパルの資格情報の入力が求められ、それらが $Credential 変数に格納されます。 昇格されたら、ユーザー名の値とサービス プリンシパル シークレットのアプリケーション ID をパスワードとして入力します。
  • 2 番目のコマンドは、変数に格納されているサービス プリンシパルの資格情報を使用して、指定された Azure テナントに $Credential 接続します。 switch パラメーターは ServicePrincipal 、アカウントがサービス プリンシパルとして認証されることを示します。

サービス プリンシパル認証を有効にするには、読み取り API アクセス許可 (Application.Read.All) をサービス プリンシパルに追加する必要があります。 詳細については、「必要な API アクセス許可 - Microsoft Information Protection SDK」を参照してください。

パラメーター

-AccessToken

このパラメーターを使用して、クライアント ID 90f610bf-206d-4950-b61d-37fa6fd1b224 とリソース ID https://api.aadrm.com/を使用して、Azure Active Directory から取得したトークンを使用して Azure Information Protectionに接続します。 この接続方法を使用すると、対話形式で Azure Information Protectionにサインインできます。

アクセス トークンを取得するには、テナントから使用するアカウントが多要素認証 (MFA) を使用していないことを確認します。 これを行う方法については、例 3 を参照してください。

このパラメーターを Credential パラメーターと共に使用することはできません。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationID

サービス プリンシパルのアプリケーション ID を指定します。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CertificateThumbprint

指定されたアクションを実行するアクセス許可を持つサービス プリンシパルのデジタル公開キー X.509 証明書の証明書拇印を指定します。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

PSCredential オブジェクトを指定します。 PSCredential オブジェクトを取得するには、Get-Credential コマンドレットを使用します。 詳細を表示するには「Get-Help Get-Cmdlet」を入力します。

このコマンドレットを実行すると、パスワードの入力を求められます。

このパラメーターを AccessToken パラメーターと共に使用することはできません。アカウントが多要素認証 (MFA) を使用するように構成されている場合は使用しないでください。

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnvironmentName

ソブリン クラウドの Azure インスタンスを指定します。 有効な値は次のとおりです。

  • AzureCloud: Azure の商用サービス
  • AzureChinaCloud: 21Vianet が運営する Azure
  • AzureUSGovernment: Azure Government

Azure Governmentで Azure Information Protection を使用する方法の詳細については、「Azure Information Protection Premium Government サービスの説明」を参照してください。

Type:AzureRmEnvironment
Accepted values:AzureCloud, AzureChinaCloud, AzureUSGovernment
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ServicePrincipal

コマンドレットがサービス プリンシパル認証を指定することを示します。

サービス プリンシパルは、指定したシークレットを使用して作成する必要があります。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TenantId

テナント GUID を指定します。 このコマンドレットは、GUID で指定したテナントの Azure Information Protectionに接続します。

このパラメーターを指定しない場合、コマンドレットはアカウントが属しているテナントに接続します。

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False