web-dev-qa-db-ja.com

PowerShell上のAzureActiveDirectoryを使用した認証

Azure Active Directory V2 PowerShellモジュール の機能を調べようとしています。

Azureアカウントを持っており、複数のユーザーでActiveDirectoryをセットアップしました。

私の最初の目標は単純です。ユーザーのリストを見せてください。

だから私はタイプします:

Connect-AzureAD

ダイアログが表示され、ユーザーアカウントとパスワードを入力します。タイプMicrosoft.Open.Azure.AD.CommonLibrary.PSAzureContextのオブジェクトを返します。

次に入力します

Get-AzureADUser

そして、エラーは次のとおりです。

Get-AzureADUser:GetUsersの実行中にエラーが発生しました

コード:Authentication_Unauthorized

メッセージ:ユーザーが見つかりませんでした

HttpStatusCode:禁止

Azure RMPowershellモジュールを使用してユーザーを一覧表示することはできます。次のコードが機能します。

Add-AzureRmAccount
Get-AzureRmADUser

Get-AzureADUserを機能させるにはどうすればよいですか?

8
Andrew Shepherd

コマンドレットConnect-AzureADは、ADD domianへの接続を確立します。ログインに成功すると、確認が表示されます。

PS C:\windows\system32> connect-azuread

Account                                Environment Tenant
-------                                ----------- ------
[email protected] AzureCloud  xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

ユーザーが管理者であるAADドメインに接続している場合は、このコマンドレットGet-AzureADDomainを使用して接続を利用できます特権-ドメインに関する情報が表示されます。

PS C:\windows\system32> get-azureaddomain

Name                                        AvailabilityStatus AuthenticationType
----                                        ------------------ ------------------
hcl.com                                                        Managed
msgamestudios.com                                              Managed
foobar.local                                                   Managed
multimap.com                                                   Managed
skypestaytogether.com                                          Managed
insightsquarterly.com.au                                       Managed
calanit.onmicrosoft.com                                        Federated
msft.ccsctp.net                                                Managed
ruffiangames.com                                               Managed
xn--m1bg0b0byewac1j8b.com                                      Managed
VoicesforInnovation.org                                        Managed
shaanximic.com                                                 Managed
www.yunnanmic.com                                              Managed
wsmbela.pss.com                                                Managed
fornax.off                                                     Managed
api.staging.yammer.com                                         Managed
codenauts.net                                                  Managed
acompli.com                                                    Managed
testdomains.co                                                 Managed
Microsoft.hr                                                   Managed
Bayportali.mmdservice.com                                      Managed
contoso.com                                                    Managed
api.swrepository.com                                           Managed
Equivio.com                                                    Managed
sunshine.am                                                    Managed
microsoftaffiliates.com                                        Managed

ユーザーがno管理者権限を持っている場合、あなたと同じエラーが発生します。

Get-AzureADDomain : Error occurred while executing GetDomains
Code: Authentication_Unauthorized
Message: User was not found
HttpStatusCode: Forbidden

その理由は、コマンドレットGetAzureADDomianにはテナントが指定されていないため、ユーザーが管理者権限を持たないdomianへの接続が確立されたためです。

予期されるAADdomianに確実に接続するには、Connect-AzureADコマンドレットの呼び出しでテナントIDを指定する必要があります。

PS C:\windows\system32> Connect-AzureAD -TenantId
19
Jason Ye

ここですでに回答されているように、以下を使用してください。

PS C:\windows\system32> Connect-AzureAD -TenantId {YOUR_TENANT_ID}
Example:
PS C:\windows\system32> Connect-AzureAD -TenantId ce1af0ab-ae35-4f60-8f2d-944444444444

次のように、Connect-AzureAdを実行するときに取得するTenantIdを使用するのはよくある間違いです。

enter image description here

ただし、Azure Portal --> Azure Active Directory --> Properties --> Directory IdTenantIdを使用してください。

Directory Id = TenantId

0
Jagjit Singh