New-MsolServicePrincipal
Azure Active Directory にサービス プリンシパルを追加します。
構文
New-MsolServicePrincipal
[-ServicePrincipalNames <String[]>]
[-AppPrincipalId <Guid>]
-DisplayName <String>
[-AccountEnabled <Boolean>]
[-Addresses <RedirectUri[]>]
[-Type <ServicePrincipalCredentialType>]
[-Value <String>]
[-StartDate <DateTime>]
[-EndDate <DateTime>]
[-Usage <ServicePrincipalCredentialUsage>]
[-TenantId <Guid>]
[<CommonParameters>]
説明
New-MsolServicePrincipal コマンドレットは、基幹業務 (LOB) アプリケーションまたは Microsoft Azure Active Directory の Microsoft Exchange、SharePoint、Lync などのオンプレミス サーバーをサービス プリンシパル オブジェクトとして表すために使用できるサービス プリンシパルを作成します。 サービス プリンシパルとして新しいアプリケーションを追加すると、そのアプリケーションは Microsoft Office 365 のような他のサービスに対して認証できます。
例
例 1: サービス プリンシパルを作成する
PS C:\> New-MsolServicePrincipal -ServicePrincipalNames @("MyApp/myApp.com") -DisplayName "My Application"
このコマンドは、サービス プリンシパルを作成します。 この例では、サービス プリンシパル名 MyApp/myApp.com と表示名 My Application を使用してサービス プリンシパルが作成され、自動生成された 256 ビット対称キーを使用してアプリケーションを検証します。 このキーは、当日から 1 年間有効です。
例 2: X509 証明書を使用するサービス プリンシパルを作成する
PS C:\> $cer = New-Object System.Security.Cryptography.X509Certificates.X509Certificate
PS C:\> $cer.Import("C:\temp\myapp.cer")
PS C:\> $binCert = $cer.GetRawCertData()
PS C:\> $credValue = [System.Convert]::ToBase64String($binCert);
PS C:\> New-MsolServicePrincipal -ServicePrincipalNames @("MyApp/myApp.com") -DisplayName "My Application" -Type asymmetric -Value $credValue
この例では、サービス プリンシパルを作成します。 この例では、サービス プリンシパル名 MyApp/myApp.com と表示名 My Application を使用して作成され、base 64 でエンコードされた非対称キーで構成された指定された X509 証明書myapp.cerを使用します。
パラメーター
-AccountEnabled
アカウントを有効にする必要があるかどうかを指定します。 既定値は $True です。
型: | Boolean |
配置: | Named |
規定値: | True |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Addresses
アプリケーションで使用されるアドレスの を指定します。 Address リスト オブジェクトを作成するには、 New-MsolServicePrincipalAddresses コマンドレットを使用します。
型: | RedirectUri[] |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-AppPrincipalId
テナント内のサービス プリンシパルの一意のアプリケーション ID を指定します。 一度作成すると、このプロパティは変更できません。 このパラメーターを指定しない場合は、アプリケーション ID が生成されます。
型: | Guid |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-DisplayName
サービス プリンシパルの表示名を指定します。
型: | String |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-EndDate
資格情報の使用の有効な終了日を指定します。 既定の終了日の値は、今日から 1 年です。
型: | DateTime |
配置: | Named |
規定値: | Today + 1 year |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-ServicePrincipalNames
サービス プリンシパルに関連付けられているサービス プリンシパル名 (SPN) の一覧。
SPN は会社のテナントごとに一意である必要があり、アプリケーションが自身を一意に識別するために使用されます。 既定では、サービス プリンシパル AppID は常に SPN として追加されます。 SPN では、次のいずれかの形式を使用する必要があります。
appName
appName/hostname
- 有効な URL
AppName はアプリケーションの名前を表し、ホスト名はアプリケーションの URI 機関を表します。 サービス プリンシパルが WS-Federation 証明書利用者を表す場合、SPN は、WS-Federation wtrealm パラメーターとして扱われる URL に設定できます。
型: | String[] |
配置: | Named |
規定値: | AppId of the service principal |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-StartDate
資格情報の使用の有効な開始日を指定します。 既定の開始日の値は today です。
型: | DateTime |
配置: | Named |
規定値: | Today |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-TenantId
操作を実行するテナントの一意の ID を指定します。 既定値は、現在のユーザーのテナントです。 このパラメーターは、パートナー ユーザーにのみ適用されます。
型: | Guid |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Type
使用する資格情報の種類を指定します。 有効な値は、非対称、対称、およびパスワードです。
- 非対称の場合、 Value パラメーターは、Base 64 でエンコードされた X509 証明書のパブリック部分に設定する必要があります。
- 対称の場合、 Value が 設定されていない場合、256 ビット AES 対称キーが生成されます。
- password の場合、 Value パラメーターを指定する必要があり、base 64 でエンコードしないでください。
既定の設定は "symmetric" です。
型: | ServicePrincipalCredentialType |
配置: | Named |
規定値: | Symmetric |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Usage
資格情報キーの使用法を指定します。 資格情報キーの使用法は、トークンに署名または検証するように設定できます。 既定の設定は verify です。
署名は対称キーに対してのみ許可されます。 すべてのキーの種類に対してが許可されていることを確認します。
要求トークンがこのサービス プリンシパルによって表されるアプリケーションによって送信されたことを確認するには、Azure Active Directory で資格情報の確認キーが必要です。 アプリケーションでは、必要に応じて、Azure Active Directory を識別する非対称公開キーではなく、署名キーを使用して署名されたアプリケーションに対して Azure Active Directory がトークンを発行することを要求する場合があります。 この場合は、サービス プリンシパルの署名資格情報キーを指定します。
型: | ServicePrincipalCredentialUsage |
配置: | Named |
規定値: | Verify |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Value
資格情報の値を指定します。
型: | String |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
出力
Microsoft.Online.Administration.ServicePrincipalExtended
このコマンドレットは、追加したサービス プリンシパルを返します。 これには、次の情報が含まれます。
- Objectid。 サービス プリンシパルの一意識別子。
- AppPrincipalId。 サービス プリンシパルのアプリケーション識別子。
- DisplayName。 サービス プリンシパルのフレンドリ名。
- ServicePrincipalName。 サービス プリンシパルに関連付けられているサービス プリンシパル名 (SPN) の一覧。
- TrustedForDelegation。 サービス プリンシパルが委任に許可されているかどうかを示す値。
- AccountEnabled。 アカウントが有効かどうかを示す値。
また、追加された資格情報の一覧も取得します。 各資格情報オブジェクトには、次の情報が含まれています。
- [Type](種類)。 サービス プリンシパル資格情報の種類 (非対称/対称/その他)。
- Value。 資格情報の値。 資格情報の種類が証明書の場合、これは Base 64 エンコード証明書を表します。 資格情報の種類が対称の場合は、AES キーを表します。
- KeyGroupId。 内部使用のために予約されている識別子。
- KeyId。 キーの一意識別子。
- Startdate。 資格情報の使用の有効な開始日。
- Enddate。 資格情報の使用の有効な終了日。
- 利用状況。 資格情報を使用してトークンの署名または検証を行うかどうかを指定します。