繁体   English   中英

Azure Ad terraform Config,Client Id从哪里来?

[英]Azure Ad terraform Config, where does the Client Id come from?

我有以下 terraform 配置。

# Terraform Block
terraform {
  required_version = ">= 1.0.0"
  required_providers {
    azurerm = {
      source  = "hashicorp/azurerm"
      version = ">= 3.0"
    }
  }
}

# Provider Block
provider "azurerm" {
  features {}
}

# Datasources
# https://registry.terraform.io/providers/hashicorp/azuread/latest/docs/data-sources/client_config

data "azuread_client_config" "current" {}

output "object_id" {
  value = data.azuread_client_config.current.object_id
}

output "client_id" {
  value = data.azuread_client_config.current.client_id
}

output "tenant_id" {
  value = data.azuread_client_config.current.tenant_id
}

当我计划然后申请时,我得到以下 output。

Outputs:

client_id = "04b07795-8ddb-YYYY-bbee-XXXXXXXXXXXX"
object_id = "3603657a-34b8-YYYY-b7df-XXXXXXXXXXXX"
tenant_id = "35b02984-c026-YYYY-8cb3-XXXXXXXXXXXX"

我可以弄清楚 object_id 和tenant_id 来自哪里。 见下文,我有屏幕截图要显示。

但我无法弄清楚 client_id 的来源。

这里是 object_id 和 tenant_id 的来源。

  1. 首先是 object id。

活动目录用户

活动目录用户 2

Active Directory 用户概述

  1. 现在是租户 ID。

Azure Active Directory 租户 ID

那么问题又来了,这个客户 ID 是什么,它来自哪里?

更新

我在 AD 的企业应用程序选项卡中看不到任何内容。 我错过了什么?

企业应用

我检查了由以下 output 产生的 clientId

data "azuread_client_config" "current" {}

output "object_id" {
  value = data.azuread_client_config.current.object_id
}

output "client_id" {
  value = data.azuread_client_config.current.client_id
}

output "tenant_id" {
  value = data.azuread_client_config.current.tenant_id
}

在此处输入图像描述

  • 如果我在 azure 广告应用程序中检查该 ID,它是Microsoft Azure CLIs applicationId

在此处输入图像描述

  • 此客户端 ID 或(应用程序 ID)是用于向(即;用于委托身份验证的应用程序)进行身份验证的应用 ID。或链接到经过身份验证的主体。
  • 如在 azure 部署 Terraform 配置,我们需要完成认证。
  • Terraform 实际上可以使用登录到 Azure CLI 的当前帐户进行身份验证,这是我的情况。

参考: client_config#attributes-reference | 注册表.terraform.io

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM