다음을 통해 공유


New-AzureRmADServicePrincipal

새 Microsoft Entra 서비스 주체를 만듭니다.

Warning

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>]

Description

새 Microsoft Entra 서비스 주체를 만듭니다. 기본 매개 변수 집합은 사용자가 매개 변수를 제공하지 않는 경우 매개 변수에 기본값을 사용합니다. 사용되는 기본값에 대한 자세한 내용은 아래의 지정된 매개 변수에 대한 설명을 참조하세요. 이 cmdlet은 및 Scope 매개 변수를 사용하여 서비스 주체 Role 에 역할을 할당할 수 있습니다. 이러한 매개 변수가 제공되지 않으면 서비스 주체에 역할이 할당되지 않습니다. 및 Scope 매개 변수의 Role 기본값은 각각 "기여자"와 현재 구독입니다(기본값은 사용자가 두 매개 변수 중 하나에 대한 값을 제공하는 경우에만 사용되지만 다른 매개 변수는 사용하지 않음). 또한 cmdlet은 애플리케이션을 암시적으로 만들고 해당 속성을 설정합니다(ApplicationId가 제공되지 않은 경우). 애플리케이션별 매개 변수를 업데이트하려면 Set-AzureRmADApplication cmdlet을 사용하세요.

예제

예제 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'인 애플리케이션을 가져오고 New-AzureRmADServicePrincipal cmdlet에 파이프하여 해당 애플리케이션에 대한 새 AD 서비스 주체를 만듭니다.

매개 변수

-ApplicationId

테넌트에서 서비스 주체에 대한 고유 애플리케이션 ID입니다. 만든 후에는 이 속성을 변경할 수 없습니다. 애플리케이션 ID를 지정하지 않으면 애플리케이션 ID가 생성됩니다.

형식:Guid
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-ApplicationObject

서비스 주체가 만들어지는 애플리케이션을 나타내는 개체입니다.

형식:PSADApplication
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-CertValue

"비대칭" 자격 증명 형식의 값입니다. Base 64로 인코딩된 인증서를 나타냅니다.

형식:String
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-Confirm

cmdlet을 실행하기 전에 확인 메시지가 표시됩니다.

형식:SwitchParameter
별칭:cf
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-DefaultProfile

Azure와의 통신에 사용되는 자격 증명, 계정, 테넌트 및 구독

형식:IAzureContextContainer
별칭:AzureRmContext, AzureCredential
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-DisplayName

서비스 주체의 이름입니다. 표시 이름이 제공되지 않으면 이 값은 기본적으로 'azure-powershell-MM-dd-yyyy-HH-mm-ss'로 설정됩니다. 여기서 접미사는 애플리케이션을 만드는 시간입니다.

형식:String
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-EndDate

자격 증명 사용의 유효 종료 날짜입니다. 기본 종료 날짜 값은 오늘부터 1년입니다. "비대칭" 형식 자격 증명의 경우 X509 인증서가 유효한 날짜 또는 그 이전으로 설정해야 합니다.

형식:DateTime
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-KeyCredential

애플리케이션과 연결된 키 자격 증명의 컬렉션입니다.

형식:PSADKeyCredential[]
별칭:KeyCredentials
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-Password

서비스 주체와 연결할 암호입니다. 암호를 제공하지 않으면 임의의 GUID가 생성되고 암호로 사용됩니다.

형식:SecureString
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-PasswordCredential

애플리케이션과 연결된 암호 자격 증명의 컬렉션입니다.

형식:PSADPasswordCredential[]
별칭:PasswordCredentials
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-Role

서비스 주체가 범위에 대해 가지고 있는 역할입니다. 값 Scope 이 제공되지만 값이 제공되지 RoleRole 않는 경우 기본적으로 '기여자' 역할로 설정됩니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Scope

서비스 주체에 사용 권한이 있는 범위입니다. 값 Role 이 제공되지만 값이 제공되지 ScopeScope 않으면 기본적으로 현재 구독으로 설정됩니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-SkipAssignment

설정된 경우 서비스 주체에 대한 기본 역할 할당 만들기를 건너뜁니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-StartDate

자격 증명 사용의 유효 시작 날짜입니다. 기본 시작 날짜 값은 오늘입니다. "비대칭" 형식 자격 증명의 경우 X509 인증서가 유효한 날짜 또는 이후로 설정해야 합니다.

형식:DateTime
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-WhatIf

cmdlet이 실행될 경우 결과 동작을 표시합니다. cmdlet이 실행되지 않습니다.

형식:SwitchParameter
별칭:wi
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

입력

Guid

String

PSADApplication

매개 변수: ApplicationObject(ByValue)

PSADPasswordCredential[]

PSADKeyCredential[]

SecureString

DateTime

출력

PSADServicePrincipal

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

참고

키워드: azure, azurerm, arm, 리소스, 관리, 관리자, 리소스, 그룹, 템플릿, 배포