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 パラメーターを使用してサービス プリンシパルにロールを割り当てることができます。これらのパラメーターがどちらも指定されていない場合、サービス プリンシパルにはロールは割り当てされません。 Roleパラメーターと Scope パラメーターの既定値はそれぞれ "共同作成者" と現在のサブスクリプションです (note: 既定値は、ユーザーが 2 つのパラメーターのいずれかに値を指定した場合にのみ使用されますが、もう 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 00001111-aaaa-2222-bbbb-3333cccc4444

ServicePrincipalNames : {00001111-aaaa-2222-bbbb-3333cccc4444, http://my-temp-app}
ApplicationId         : 00001111-aaaa-2222-bbbb-3333cccc4444
DisplayName           : my-temp-app
Id                    : yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy
Type                  : ServicePrincipal

アプリケーション ID '00001111-aaaa-2222-bbbb-3333cccc4444' を使用して、アプリケーションの新しい 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 が生成されます。

型:Guid
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-ApplicationObject

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

型:PSADApplication
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-CertValue

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

型:String
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-Confirm

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

型:SwitchParameter
Aliases:cf
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-DefaultProfile

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

型:IAzureContextContainer
Aliases:AzureRmContext, AzureCredential
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-DisplayName

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

型:String
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-EndDate

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

型:DateTime
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-KeyCredential

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

型:PSADKeyCredential[]
Aliases:KeyCredentials
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-Password

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

型:SecureString
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-PasswordCredential

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

型:PSADPasswordCredential[]
Aliases:PasswordCredentials
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-Role

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

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Scope

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

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-SkipAssignment

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

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-StartDate

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

型:DateTime
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-WhatIf

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

型:SwitchParameter
Aliases:wi
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

Guid

String

PSADApplication

パラメーター: ApplicationObject (ByValue)

PSADPasswordCredential[]

PSADKeyCredential[]

SecureString

DateTime

出力

PSADServicePrincipal

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

メモ

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