Add-AzureAccount 실행 시 "No subscriptions are associated with the logged in account in Azure Service Management (RDFE)." 오류
PowerShell에서 다음과 같이 Add-AzureAccount 수행 시 오류가 발생합니다.
Add-AzureAccount : No subscriptions are associated with the logged in account in Azure Service Management (RDFE). This means that the logged in user is not an administrator or co-administrator for any account.\r\nDid you mean to execute Connect-AzureRmAccount?
At line:10 char:1
+ Add-AzureAccount
+ ~~~~~~~~~~~~~~~~
+ CategoryInfo : CloseError: (:) [Add-AzureAccount], ArgumentException
+ FullyQualifiedErrorId : Microsoft.WindowsAzure.Commands.Profile.AddAzureAccount
이상하군요. 분명히 az account로 확인하면 Azure 구독과 연결되어 있고,
PS Azure:\> az account show
{
"environmentName": "AzureCloud",
"id": "...[생략]...",
"isDefault": true,
"name": "MyAzureSubs",
"state": "Enabled",
"tenantId": "...[생략]...",
"user": {
"cloudShellID": true,
"name": "testuser@test.com",
"type": "user"
}
}
게다가 저 계정은 분명히 구독 레벨에서,
Azure의 Access control 보안과 Azure Active Directory의 계정 관리 서비스
; https://www.sysnet.pe.kr/2/0/11495
IAM 권한이 "Owner"로 설정되어 있는 것이어서 당연히 "administrator"에 속하는 급입니다. 그런데 검색해 보면 다음의 글이 나옵니다.
Login-azureRMAccount vs Add-AzureAccount
; https://social.msdn.microsoft.com/Forums/en-US/e6bdb2f3-c3b0-4a99-b75d-3493cf63e03b/loginazurermaccount-vs-addazureaccount?forum=azurescripting
아하~~~ 대충 돌아가는 분위기를 알겠습니다. 그러니까, 해당 구독을 최초로 만든 사람만이 "administrator"에 속합니다. 그 계정이 다른 계정에게 Access control(IAM) 권한으로 "Owner"를 주었다고 해서 그 다른 계정이 "administrator"까지 되는 것은 아닙니다. 대신 "co-administrator"로써 설정해 줄 수는 있는데 그 방법은 아래의 문서에 나옵니다.
Azure 구독 관리자 추가 또는 변경
; https://docs.microsoft.com/ko-kr/azure/billing/billing-add-change-azure-subscription-administrator
따라서 위의 문서에 실린 아래의 이미지처럼,
"Owner" 계정의 사용자에 대해 마우스 우-클릭을 해 명시적으로 "Add as co-administrator" 권한을 주어야만 합니다. 이렇게 하고 다시 Add-AzureAccount 명령을 수행하면 정상적으로 수행하는 것을 확인할 수 있습니다.
참고로 Add-AzureAccount 명령 없이 Select-AzureSubscription을 수행하면 다음과 같은 식의 오류가 발생합니다.
Select-AzureSubscription $subscriptionName
Select-AzureSubscription : The subscription name MyAzureSubs doesn't exist.
Parameter name: name
At line:15 char:1
+ Select-AzureSubscription $subscriptionName
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : CloseError: (:) [Select-AzureSubscription], ArgumentException
+ FullyQualifiedErrorId : Microsoft.WindowsAzure.Commands.Profile.SelectAzureSubscriptionCommand
[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]