1. ホーム
  2. azure

[解決済み] Connect-AzAccount - azureのデバイス認証を回避する方法は?

2022-03-01 11:36:28

質問

PowerShell 6.1.3バージョンをインストールしました。 以下のAzure PowerShellコマンドを使用して、Azureアカウントへの接続を取得したいのですが、どうすればよいですか?

Connect-AzAccount -Tenant <tenantId> -Subscription <subId>

このコマンドを入力した後、私はURLといくつかのコードを含む警告を取得します。 それから、URLに移動して、そこにコードを入力しなければなりません。その後、Azureアカウントへの接続を取得します。

この確認を回避する方法はありますか?

また、以下のコマンドでやってみました。

az login -u <username> -p <password>

このコマンドはアカウント情報(subscriptionId, tenantIdなど)を返すだけで、このアカウントへの接続をインストールすることはありません。

どのように解決するのですか?

1.ユーザーアカウントでログインするには、以下のコマンドを実行してください。ただし、アカウントでMFA(多要素認証)が有効になっていないことを確認してください。

$User = "[email protected]"
$PWord = ConvertTo-SecureString -String "<Password>" -AsPlainText -Force
$tenant = "<tenant id>"
$subscription = "<subscription id>"
$Credential = New-Object -TypeName "System.Management.Automation.PSCredential" -ArgumentList $User,$PWord
Connect-AzAccount -Credential $Credential -Tenant $tenant -Subscription $subscription

2.サービスプリンシパルを使用してログインすることも可能です。その場合は、以下のコマンドを使用します。

$azureAplicationId ="Azure AD Application Id"
$azureTenantId= "Your Tenant Id"
$azurePassword = ConvertTo-SecureString "strong password" -AsPlainText -Force
$psCred = New-Object System.Management.Automation.PSCredential($azureAplicationId , $azurePassword)
Connect-AzAccount -Credential $psCred -TenantId $azureTenantId  -ServicePrincipal 

私が回答した同様の問題を参照してください。 こちら を使用すると、古い AzureRM モジュールは Az の場合は、最後の行を変更するだけです。

サービスプリンシパルについてよく知らない場合は、以下を参照してください。 方法 ポータルを使用して、リソースにアクセスできるAzure ADアプリケーションとサービスプリンシパルを作成する方法 また アプリケーション ID と認証キー Azure AD Application Idstrong password が必要です。