Azureがサポートするterraformアカウントの構築エラー

svobol13

を実行すると、突然、予期せずエラーが発生しましたterraform plan

Error: Error building account: Error getting authenticated object ID: Error parsing json result from the Azure CLI: Error retrieving running Azure CLI: Unable to encode the output with ANSI_X3.4-1968 encoding. U
nsupported characters are discarded.

  on main.tf line 4, in provider "azurerm":
   4: provider "azurerm" {

ログの近くのエラーは次のようになります。

2020-04-14T10:22:53.257Z [DEBUG] plugin.terraform-provider-azurerm_v2.5.0_x5: Testing if Service Principal / Client Certificate is applicable for Authentication..
2020-04-14T10:22:53.257Z [DEBUG] plugin.terraform-provider-azurerm_v2.5.0_x5: Testing if Multi Tenant Service Principal / Client Secret is applicable for Authentication..
2020-04-14T10:22:53.257Z [DEBUG] plugin.terraform-provider-azurerm_v2.5.0_x5: Testing if Service Principal / Client Secret is applicable for Authentication..
2020-04-14T10:22:53.257Z [DEBUG] plugin.terraform-provider-azurerm_v2.5.0_x5: Testing if Managed Service Identity is applicable for Authentication..
2020-04-14T10:22:53.257Z [DEBUG] plugin.terraform-provider-azurerm_v2.5.0_x5: Testing if Obtaining a token from the Azure CLI is applicable for Authentication..
2020-04-14T10:22:53.257Z [DEBUG] plugin.terraform-provider-azurerm_v2.5.0_x5: Using Obtaining a token from the Azure CLI for Authentication
2020-04-14T10:22:53.258Z [DEBUG] plugin.terraform-provider-azurerm_v2.5.0_x5: [DEBUG] Resource "https://management.core.windows.net/" isn't for the correct Tenant
2020/04/14 10:22:54 [ERROR] <root>: eval: *terraform.EvalConfigProvider, err: Error building account: Error getting authenticated object ID: Error parsing json result from the Azure CLI: Error retrieving running
 Azure CLI: Unable to encode the output with ANSI_X3.4-1968 encoding. Unsupported characters are discarded.
2020/04/14 10:22:54 [ERROR] <root>: eval: *terraform.EvalSequence, err: Error building account: Error getting authenticated object ID: Error parsing json result from the Azure CLI: Error retrieving running Azure
 CLI: Unable to encode the output with ANSI_X3.4-1968 encoding. Unsupported characters are discarded.
2020/04/14 10:22:54 [ERROR] <root>: eval: *terraform.EvalOpFilter, err: Error building account: Error getting authenticated object ID: Error parsing json result from the Azure CLI: Error retrieving running Azure
 CLI: Unable to encode the output with ANSI_X3.4-1968 encoding. Unsupported characters are discarded.
2020/04/14 10:22:54 [ERROR] <root>: eval: *terraform.EvalSequence, err: Error building account: Error getting authenticated object ID: Error parsing json result from the Azure CLI: Error retrieving running Azure
 CLI: Unable to encode the output with ANSI_X3.4-1968 encoding. Unsupported characters are discarded.
2020/04/14 10:22:54 [TRACE] [walkRefresh] Exiting eval tree: provider.azurerm
2020/04/14 10:22:54 [TRACE] vertex "provider.azurerm": visit complete
2020/04/14 10:22:54 [TRACE] dag/walk: upstream of "azurerm_cosmosdb_mongo_database.cupi" errored, so skipping
2020/04/14 10:22:54 [TRACE] dag/walk: upstream of "azurerm_log_analytics_workspace.law-cupi" errored, so skipping
2020/04/14 10:22:54 [TRACE] dag/walk: upstream of "azurerm_cosmosdb_account.cosmodb_account" errored, so skipping
2020/04/14 10:22:54 [TRACE] dag/walk: upstream of "azurerm_cosmosdb_mongo_collection.customer" errored, so skipping
2020/04/14 10:22:54 [TRACE] dag/walk: upstream of "azurerm_resource_group.rg-cupi" errored, so skipping
2020/04/14 10:22:54 [TRACE] dag/walk: upstream of "azurerm_log_analytics_solution.las-cupi" errored, so skipping
2020/04/14 10:22:54 [TRACE] dag/walk: upstream of "azurerm_kubernetes_cluster.aks-cupi" errored, so skipping
2020/04/14 10:22:54 [TRACE] dag/walk: upstream of "azurerm_cosmosdb_mongo_collection.deactivationRequest" errored, so skipping
2020/04/14 10:22:54 [TRACE] dag/walk: upstream of "azurerm_cosmosdb_mongo_collection.customerHash" errored, so skipping
2020/04/14 10:22:54 [TRACE] dag/walk: upstream of "azurerm_cosmosdb_mongo_collection.apiAuth" errored, so skipping
2020/04/14 10:22:54 [TRACE] dag/walk: upstream of "provider.azurerm (close)" errored, so skipping
2020/04/14 10:22:54 [TRACE] dag/walk: upstream of "root" errored, so skipping

と私のバージョン terraform

$ terraform version
2020/04/14 10:24:24 [INFO] Terraform version: 0.12.24
2020/04/14 10:24:24 [INFO] Go runtime version: go1.12.13
2020/04/14 10:24:24 [INFO] CLI args: []string{"/usr/bin/terraform", "version"}
2020/04/14 10:24:24 [DEBUG] Attempting to open CLI config file: /root/.terraformrc
2020/04/14 10:24:24 [DEBUG] File doesn't exist, but doesn't need to. Ignoring.
2020/04/14 10:24:24 [INFO] CLI command args: []string{"version"}
Terraform v0.12.24
2020/04/14 10:24:24 [DEBUG] checking for provider in "."
2020/04/14 10:24:24 [DEBUG] checking for provider in "/usr/bin"
2020/04/14 10:24:24 [DEBUG] checking for provider in ".terraform/plugins/linux_amd64"
2020/04/14 10:24:24 [DEBUG] found provider "terraform-provider-azuread_v0.8.0_x4"
2020/04/14 10:24:24 [DEBUG] found provider "terraform-provider-azurerm_v2.5.0_x5"
2020/04/14 10:24:24 [DEBUG] found provider "terraform-provider-random_v2.2.1_x4"
2020/04/14 10:24:24 [DEBUG] found valid plugin: "azurerm", "2.5.0", "/cupi/operations/terraform/.terraform/plugins/linux_amd64/terraform-provider-azurerm_v2.5.0_x5"
2020/04/14 10:24:24 [DEBUG] found valid plugin: "random", "2.2.1", "/cupi/operations/terraform/.terraform/plugins/linux_amd64/terraform-provider-random_v2.2.1_x4"
2020/04/14 10:24:24 [DEBUG] found valid plugin: "azuread", "0.8.0", "/cupi/operations/terraform/.terraform/plugins/linux_amd64/terraform-provider-azuread_v0.8.0_x4"
+ provider.azuread v0.8.0
+ provider.azurerm v2.5.0
+ provider.random v2.2.1

そして最後に私のazCLI

$ az --version
azure-cli                          2.3.1

command-modules-nspkg              2.0.3
core                               2.3.1
nspkg                              3.0.4
telemetry                          1.0.4

Python location '/opt/az/bin/python3'
Extensions directory '/root/.azure/cliextensions'

Python (Linux) 3.6.5 (default, Apr  1 2020, 07:19:45)
[GCC 7.5.0]

Legal docs and information: aka.ms/AzureCliLegal

私のmain.tfファイル:

provider "azuread" {
  version = "~>0.8"
}
provider "azurerm" {
  version         = "~>2"
  subscription_id = "..."
  features {}
}
terraform {
  backend "azurerm" {}
}

以下のスレッドも読みました。どれも私の問題を助けたり解決したりしませんでした。今日は機能しない同じ構成で、数日前に変更なしで機能しました(クライアント側で変更できるのはプラグインのバージョンだけです-グレードを上げたり下げたりしましたが、成功しませんでした)。

アミット・バラネス

コメントで述べたように、問題はプロバイダーでサービスプリンシパルを提供していませんでした。正しい構文は次のとおりです。

# Configure the Azure Provider
# https://www.terraform.io/docs/providers/azurerm/index.html
provider "azurerm" {
  subscription_id = var.SUBSCRIPTION_ID
  client_id       = var.SP_CLIENT_ID
  client_secret   = var.SP_CLIENT_SECRET
  tenant_id       = var.SP_TENANT_ID
  version         = "=2.0.0" #Can be overide as you wish
  features {}
}

サービスプリンシパルとは何ですか?

Azureサービスプリンシパルは、Azureリソースにアクセスするためのアプリケーション、ホストされたサービス、および自動化されたツールで使用するために作成されたIDです。このアクセスは、サービスプリンシパルに割り当てられたロールによって制限され、アクセスできるリソースとレベルを制御できます。セキュリティ上の理由から、ユーザーIDでログインするのではなく、自動化されたツールでサービスプリンシパルを使用することを常にお勧めします。

詳細はこちら

そうは言っても、なぜTerraformでサービスプリンシパルを使用する必要があるのでしょうか。

  1. サービスプリンシパルを使用する場合、特定のリソースに制限付きのアクセス許可を与えることができます。
  2. サービスプリンシパルはどのユーザーにも関連付けられていません。したがって、複数のユーザーがこのサービスプリンシパルを使用できます。
  3. 自分の権限とは異なる権限をアプリIDに割り当てることができます。

Azureプロバイダー:クライアントシークレットを持つサービスプリンシパルを使用した認証

AZ CLIログインの問題について:

正直なところ、自信を持って共有できる答えはありません。しかし、私の推測では、に問題があると思いAZ CLI version 2.3.1ます。

ここに画像の説明を入力してください

約2週間前に、新しいバージョンがリリースされたときにAzureチームが関連する問題を修正したことがわかるaz loginように、これが現在の動作が異なる理由だと思います。

それを確認したい場合は、にダウングレードして2.3.0、これがまだ発生しているかどうかを確認できます

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Netsuiteエラー:2019.1 SOAPWebサービスエンドポイントでアカウント固有のドメインを使用する必要があります

分類Dev

Webサービスクライアント-タイムアウトが原因で構築に失敗する(プロキシの問題)

分類Dev

アレクサスキルアカウントのリンクがトークンエンドポイントで失敗する

分類Dev

Azureストレージアカウントにストレージ共有を追加する際のエラー

分類Dev

フォローシステムを構築しようとしていますが、既得のアカウントのpkを取得しようとするとエラーが発生します

分類Dev

caffeのGPUDockerイメージを構築する際のエラー:サポートされていないgpuアーキテクチャ 'compute_60'

分類Dev

Azureパイプライン:ビルドサービスアカウントにリポジトリへの貢献アクセスを許可する方法

分類Dev

複数のマシンのハードウェアをサポートするlocalmodconfigを使用してカスタムカーネルを構築するにはどうすればよいですか?

分類Dev

TerraformのKubernetesサービスアカウントからトークンデータを取得する

分類Dev

ECMAScript 6のインポートおよびエクスポート構文をサポートしているブラウザーはどれですか?

分類Dev

bazel サポートを使用して Android で tensorflow を構築する際のエラー

分類Dev

サーバー側のアカウント作成エラー

分類Dev

Autodisk BIM360アカウント管理エンドポイントで3つのレッグトークンがサポートされていますか?

分類Dev

GPU / CUDAをサポートするPCLライブラリの構築

分類Dev

大規模なアカウントのレポートをインポートすると、GoogleAdWordsのBigQueryデータ転送サービスが失敗する

分類Dev

サービスアカウントの資格情報を使用したGDriveのエクスポートが404で失敗する

分類Dev

パーセプトロンを構築する際のJupiterLabs構文エラー

分類Dev

カウントが構文エラーを返すのはなぜですか?

分類Dev

エクスポート署名されたアプリケーションandroidを使用してapkを構築する際のProguardエラー

分類Dev

ブラウザのビューポートのサイズまでカウントアップするアニメーションを作成する

分類Dev

複数のサーバーにソフトウェアをインストールできる中央インストーラーの構築

分類Dev

TravisがJavaFxをサポートするOpenJDK10を構築

分類Dev

カフカプロデューサーを作成するデモアプリケーションが、java.lang.InstantiationException:nullに対して「カフカプロデューサーの構築に失敗しました」エラーをスローする

分類Dev

カフカプロデューサーを作成するデモアプリケーションが、java.lang.InstantiationException:nullに対して「カフカプロデューサーの構築に失敗しました」エラーをスローする

分類Dev

Googleサービスアカウントで不正なエラーが発生する

分類Dev

持つNoSuchAlgorithmException:JAVAによるSSLのウェブサイトへの接続中にエラーが実装を構築する8

分類Dev

エラー:10548。構成が無効です。マーチャントのアカウントはトランザクションを処理できません

分類Dev

カフェパーサーサポートを使用してarmNNを構築する際の問題

分類Dev

GoogleFirebaseアカウントのサインインに関するエラー16の問題

Related 関連記事

  1. 1

    Netsuiteエラー:2019.1 SOAPWebサービスエンドポイントでアカウント固有のドメインを使用する必要があります

  2. 2

    Webサービスクライアント-タイムアウトが原因で構築に失敗する(プロキシの問題)

  3. 3

    アレクサスキルアカウントのリンクがトークンエンドポイントで失敗する

  4. 4

    Azureストレージアカウントにストレージ共有を追加する際のエラー

  5. 5

    フォローシステムを構築しようとしていますが、既得のアカウントのpkを取得しようとするとエラーが発生します

  6. 6

    caffeのGPUDockerイメージを構築する際のエラー:サポートされていないgpuアーキテクチャ 'compute_60'

  7. 7

    Azureパイプライン:ビルドサービスアカウントにリポジトリへの貢献アクセスを許可する方法

  8. 8

    複数のマシンのハードウェアをサポートするlocalmodconfigを使用してカスタムカーネルを構築するにはどうすればよいですか?

  9. 9

    TerraformのKubernetesサービスアカウントからトークンデータを取得する

  10. 10

    ECMAScript 6のインポートおよびエクスポート構文をサポートしているブラウザーはどれですか?

  11. 11

    bazel サポートを使用して Android で tensorflow を構築する際のエラー

  12. 12

    サーバー側のアカウント作成エラー

  13. 13

    Autodisk BIM360アカウント管理エンドポイントで3つのレッグトークンがサポートされていますか?

  14. 14

    GPU / CUDAをサポートするPCLライブラリの構築

  15. 15

    大規模なアカウントのレポートをインポートすると、GoogleAdWordsのBigQueryデータ転送サービスが失敗する

  16. 16

    サービスアカウントの資格情報を使用したGDriveのエクスポートが404で失敗する

  17. 17

    パーセプトロンを構築する際のJupiterLabs構文エラー

  18. 18

    カウントが構文エラーを返すのはなぜですか?

  19. 19

    エクスポート署名されたアプリケーションandroidを使用してapkを構築する際のProguardエラー

  20. 20

    ブラウザのビューポートのサイズまでカウントアップするアニメーションを作成する

  21. 21

    複数のサーバーにソフトウェアをインストールできる中央インストーラーの構築

  22. 22

    TravisがJavaFxをサポートするOpenJDK10を構築

  23. 23

    カフカプロデューサーを作成するデモアプリケーションが、java.lang.InstantiationException:nullに対して「カフカプロデューサーの構築に失敗しました」エラーをスローする

  24. 24

    カフカプロデューサーを作成するデモアプリケーションが、java.lang.InstantiationException:nullに対して「カフカプロデューサーの構築に失敗しました」エラーをスローする

  25. 25

    Googleサービスアカウントで不正なエラーが発生する

  26. 26

    持つNoSuchAlgorithmException:JAVAによるSSLのウェブサイトへの接続中にエラーが実装を構築する8

  27. 27

    エラー:10548。構成が無効です。マーチャントのアカウントはトランザクションを処理できません

  28. 28

    カフェパーサーサポートを使用してarmNNを構築する際の問題

  29. 29

    GoogleFirebaseアカウントのサインインに関するエラー16の問題

ホットタグ

アーカイブ