New-AzureRmADServicePrincipal

新しい Microsoft Entra サービス プリンシパルを作成します。

警告

AzureRM PowerShell モジュールは、2024 年 2 月 29 日の時点で正式に非推奨になりました。 引き続きサポートを受け、更新を受け取れるようにするために、AzureRM から Az PowerShell モジュールに移行することをお勧めします。

AzureRM モジュールは引き続き機能する可能性がありますが、メインが維持またはサポートされなくなり、ユーザーの判断とリスクで引き続き使用できます。 Az モジュールへの移行に関するガイダンスについては、移行リソースを参照してください。

構文

New-AzureRmADServicePrincipal
   [-ApplicationId <Guid>]
   [-DisplayName <String>]
   [-Password <SecureString>]
   [-StartDate <DateTime>]
   [-EndDate <DateTime>]
   [-Scope <String>]
   [-Role <String>]
   [-SkipAssignment]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureRmADServicePrincipal
   -ApplicationId <Guid>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureRmADServicePrincipal
   -ApplicationId <Guid>
   -Password <SecureString>
   [-StartDate <DateTime>]
   [-EndDate <DateTime>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureRmADServicePrincipal
   -ApplicationId <Guid>
   -PasswordCredential <PSADPasswordCredential[]>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureRmADServicePrincipal
   -ApplicationId <Guid>
   -CertValue <String>
   [-StartDate <DateTime>]
   [-EndDate <DateTime>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureRmADServicePrincipal
   -ApplicationId <Guid>
   -KeyCredential <PSADKeyCredential[]>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureRmADServicePrincipal
   -DisplayName <String>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureRmADServicePrincipal
   -DisplayName <String>
   -Password <SecureString>
   [-StartDate <DateTime>]
   [-EndDate <DateTime>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureRmADServicePrincipal
   -DisplayName <String>
   -PasswordCredential <PSADPasswordCredential[]>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureRmADServicePrincipal
   -DisplayName <String>
   -CertValue <String>
   [-StartDate <DateTime>]
   [-EndDate <DateTime>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureRmADServicePrincipal
   -DisplayName <String>
   -KeyCredential <PSADKeyCredential[]>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureRmADServicePrincipal
   -ApplicationObject <PSADApplication>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureRmADServicePrincipal
   -ApplicationObject <PSADApplication>
   -Password <SecureString>
   [-StartDate <DateTime>]
   [-EndDate <DateTime>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureRmADServicePrincipal
   -ApplicationObject <PSADApplication>
   -PasswordCredential <PSADPasswordCredential[]>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureRmADServicePrincipal
   -ApplicationObject <PSADApplication>
   -CertValue <String>
   [-StartDate <DateTime>]
   [-EndDate <DateTime>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureRmADServicePrincipal
   -ApplicationObject <PSADApplication>
   -KeyCredential <PSADKeyCredential[]>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

説明

新しい Microsoft Entra サービス プリンシパルを作成します。 既定のパラメーター セットでは、ユーザーがパラメーターに既定値を指定しない場合、パラメーターに既定値が使用されます。 使用される既定値の詳細については、以下の指定されたパラメーターの説明を参照してください。 このコマンドレットには、サービス プリンシパル Role にロールと Scope パラメーターを割り当てる機能があります。これらのパラメーターがどちらも指定されていない場合、サービス プリンシパルにはロールは割り当てされません。 パラメーターとScopeパラメーターの既定値Roleはそれぞれ "共同作成者" と現在のサブスクリプションです (: 既定値は、ユーザーが 2 つのパラメーターの 1 つに値を指定した場合にのみ使用されますが、もう 1 つのパラメーターには使用されません)。 また、このコマンドレットは、アプリケーションを暗黙的に作成し、そのプロパティを設定します (ApplicationId が指定されていない場合)。 アプリケーション固有のパラメーターを更新するには、Set-AzureRmADApplication コマンドレットを使用してください。

例 1 - シンプルな AD サービス プリンシパルの作成

PS C:\> New-AzureRmADServicePrincipal

Secret                : System.Security.SecureString
ServicePrincipalNames : {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, http://azure-powershell-05-22-2018-18-23-43}
ApplicationId         : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
DisplayName           : azure-powershell-05-22-2018-18-23-43
Id                    : yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy
Type                  : ServicePrincipal

上記のコマンドは、指定されていないパラメーターの既定値を使用して AD サービス プリンシパルを作成します。 アプリケーション ID が指定されていないため、サービス プリンシパル用にアプリケーションが作成されました。 値が指定 Role されていないか、または Scope指定されていないため、作成されたサービス プリンシパルにはアクセス許可がありません。

例 2 - 指定されたロールと既定のスコープを持つシンプルな AD サービス プリンシパルの作成

PS C:\> New-AzureRmADServicePrincipal -Role Reader

Secret                : System.Security.SecureString
ServicePrincipalNames : {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, http://azure-powershell-05-22-2018-18-23-43}
ApplicationId         : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
DisplayName           : azure-powershell-05-22-2018-18-23-43
Id                    : yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy
Type                  : ServicePrincipal

WARNING: Assigning role 'Reader' over scope '/subscriptions/zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz' to the new service principal.

上記のコマンドは、指定されていないパラメーターの既定値を使用して AD サービス プリンシパルを作成します。 アプリケーション ID が指定されていないため、サービス プリンシパル用にアプリケーションが作成されました。 サービス プリンシパルは、現在のサブスクリプションに対する "閲覧者" アクセス許可で作成されました (パラメーターに値が Scope 指定されていないため)。

例 3 - 指定されたスコープと既定のロールを使用したシンプルな AD サービス プリンシパルの作成

PS C:\> New-AzureRmADServicePrincipal -Scope /subscriptions/zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz/resourceGroups/myResourceGroup

Secret                : System.Security.SecureString
ServicePrincipalNames : {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, http://azure-powershell-05-22-2018-18-23-43}
ApplicationId         : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
DisplayName           : azure-powershell-05-22-2018-18-23-43
Id                    : yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy
Type                  : ServicePrincipal

WARNING: Assigning role 'Contributor' over scope '/subscriptions/zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz/resourceGroups/myResourceGroup' to the new service principal.

上記のコマンドは、指定されていないパラメーターの既定値を使用して AD サービス プリンシパルを作成します。 アプリケーション ID が指定されていないため、サービス プリンシパル用にアプリケーションが作成されました。 サービス プリンシパルは、指定されたリソース グループ スコープに対する "共同作成者" アクセス許可 (パラメーターに Role 値が指定されていないため) で作成されました。

例 4 - 指定されたスコープとロールを使用したシンプルな AD サービス プリンシパルの作成

PS C:\> New-AzureRmADServicePrincipal -Role Reader -Scope /subscriptions/zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz/resourceGroups/myResourceGroup

Secret                : System.Security.SecureString
ServicePrincipalNames : {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, http://azure-powershell-05-22-2018-18-23-43}
ApplicationId         : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
DisplayName           : azure-powershell-05-22-2018-18-23-43
Id                    : yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy
Type                  : ServicePrincipal

WARNING: Assigning role 'Reader' over scope '/subscriptions/zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz/resourceGroups/myResourceGroup' to the new service principal.

上記のコマンドは、指定されていないパラメーターの既定値を使用して AD サービス プリンシパルを作成します。 アプリケーション ID が指定されていないため、サービス プリンシパル用にアプリケーションが作成されました。 サービス プリンシパルは、指定されたリソース グループ スコープに対する "閲覧者" アクセス許可で作成されました。

例 5 - ロールの割り当てでアプリケーション ID を使用して新しい AD サービス プリンシパルを作成する

PS C:\> New-AzureRmADServicePrincipal -ApplicationId 34a28ad2-dec4-4a41-bc3b-d22ddf90000e

ServicePrincipalNames : {34a28ad2-dec4-4a41-bc3b-d22ddf90000e, http://my-temp-app}
ApplicationId         : 34a28ad2-dec4-4a41-bc3b-d22ddf90000e
DisplayName           : my-temp-app
Id                    : yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy
Type                  : ServicePrincipal

アプリケーション ID '34a28ad2-dec4-4a41-bc3b-d22ddf90000e' を使用して、アプリケーションの新しい AD サービス プリンシパルを作成します。 値が指定 Role されていないか、または Scope指定されていないため、作成されたサービス プリンシパルにはアクセス許可がありません。

例 6 - 配管を使用して新しい AD サービス プリンシパルを作成する

PS C:\> Get-AzureRmADApplication -ObjectId 3ede3c26-b443-4e0b-9efc-b05e68338dc3 | New-AzureRmADServicePrincipal

オブジェクト ID '3ede3c26-b443-4e0b-9efc-b05e68338dc3' を持つアプリケーションを取得し、そのアプリケーションの新しい AD サービス プリンシパルを作成するために New-AzureRmADServicePrincipal コマンドレットにパイプします。

パラメーター

-ApplicationId

テナント内のサービス プリンシパルの一意のアプリケーション ID。 一度作成すると、このプロパティを変更することはできません。 アプリケーション ID が指定されていない場合は、アプリケーション ID が生成されます。

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

-ApplicationObject

サービス プリンシパルが作成されるアプリケーションを表すオブジェクト。

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

-CertValue

"非対称" 資格情報の種類の値。 Base 64 でエンコードされた証明書を表します。

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

-Confirm

コマンドレットの実行前に確認を求めるメッセージが表示されます。

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

-DefaultProfile

Azure との通信に使用される資格情報、アカウント、テナント、サブスクリプション

Type:IAzureContextContainer
Aliases:AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DisplayName

サービス プリンシパルのフレンドリ名。 表示名が指定されていない場合、この値は既定で "azure-powershell-MM-dd-yyyy-HH-mm-ss" になります。サフィックスはアプリケーションの作成時です。

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

-EndDate

資格情報の使用の有効な終了日。 既定の終了日の値は、今日から 1 年です。 "非対称" 型の資格情報の場合は、X509 証明書が有効な日付以前に設定する必要があります。

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

-KeyCredential

アプリケーションに関連付けられているキー資格情報のコレクション。

Type:PSADKeyCredential[]
Aliases:KeyCredentials
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Password

サービス プリンシパルに関連付けるパスワード。 パスワードが指定されていない場合は、ランダムな GUID が生成され、パスワードとして使用されます。

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

-PasswordCredential

アプリケーションに関連付けられているパスワード資格情報のコレクション。

Type:PSADPasswordCredential[]
Aliases:PasswordCredentials
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Role

サービス プリンシパルがスコープに対して持つロール。 値 Scope が指定されていても値が指定 Roleされていない場合は、 Role 既定で "共同作成者" ロールが使用されます。

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

-Scope

サービス プリンシパルがアクセス許可を持つスコープ。 値 Role が指定されていても、値が指定 Scopeされていない場合は、 Scope 既定で現在のサブスクリプションが使用されます。

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

-SkipAssignment

設定されている場合、サービス プリンシパルの既定のロール割り当ての作成はスキップされます。

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

-StartDate

資格情報の使用の有効な開始日。 既定の開始日の値は今日です。 "非対称" 型の資格情報の場合は、X509 証明書が有効な日付以降に設定する必要があります。

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

-WhatIf

コマンドレットの実行時に発生する内容を示します。 このコマンドレットは実行されません。

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

入力

Guid

String

PSADApplication

パラメーター: ApplicationObject (ByValue)

PSADPasswordCredential[]

PSADKeyCredential[]

SecureString

DateTime

出力

PSADServicePrincipal

Microsoft.Azure.Commands.Resources.Models.Authorization.PSADServicePrincipalWrapper

メモ

キーワード: azure, azurerm, arm, リソース, 管理, マネージャー, リソース, グループ, テンプレート, デプロイ