连接 DNS 提供程序
通过 IBM Cloud® Secrets Manager,您可以通过向实例添加配置来连接到 DNS 提供程序。
DNS 提供者是用于添加和管理应用程序或服务的域的服务。 通过添加 DNS 配置,可以在通过 Secrets Manager 订购证书 时指定要用于域验证的 DNS 服务。
每个实例最多可以定义 10 个 DNS 配置。 要查看可用于实例的配置列表,请转至 Secrets Manager UI 中的“密钥引擎> 公用证书”页面。
每个实例最多可以定义 10 个 DNS 配置。 要获取可用于实例的配置列表,可以使用 列出配置 API。
准备工作
开始之前,请确保您具有所需的访问级别。 要管理实例的引擎配置,您需要 管理者 服务角色或更高版本。
受支持的 DNS 提供程序
您可以将以下 DNS 提供程序与 Secrets Manager 服务实例连接。
先决条件 |
---|
在为 Cloud Internet Services (CIS)添加配置之前,请确保:
|
先决条件 |
---|
在为经典基础架构添加配置之前,请确保:
1。 获取经典基础架构用户名。 如果要使用 IBMid 登录到您的帐户,那么经典基础架构用户名是 |
先决条件 |
---|
要使用您自己的 DNS 提供者,必须参阅提供者的文档以获取指示信息。 Secrets Manager中不需要 DNS 提供程序配置。 |
在 UI 中添加 DNS 提供者配置
您可以使用 Secrets Manager UI 将 DNS 提供程序配置添加到服务实例。
-
在控制台中,单击 菜单 图标
> 资源列表。
-
从服务列表中,选择 Secrets Manager的实例。
-
在“密钥引擎”页面中,单击 公用证书 选项卡。
-
在“DNS 提供者”表中,单击 添加。
-
选择要使用的 DNS 提供商。
目前,您可以添加 Cloud Internet Services (CIS) 和 IBM Cloud 经典基础架构的配置。 您还可以使用自己的 DNS 提供程序,但在这种情况下不需要配置。
-
授予 Secrets Manager 与所选 DNS 提供者之间的服务访问权。
-
如果选择 CIS,请通过从授权 CIS 实例列表中进行选择或输入 API 密钥来授予访问权。
还没有授权吗? 您可以 在 IAM 控制台中创建一个。 (可选) 您可以通过提供 API 密钥和实例 CRN 来授予对 CIS 的访问权。 您可以在 CIS 服务实例的“概述”页面中找到 CRN。 有关为 CIS创建 API 密钥的更多信息,请参阅 使用 API 密钥授予服务访问权
-
如果选择经典基础架构,请输入与您的帐户关联的 用户名和 API 密钥。
-
如果选择使用自己的 DNS 提供程序,请参阅提供程序的文档以获取指示信息。 Secrets Manager中不需要 DNS 提供程序配置。
-
-
单击添加。
从 CLI 添加 DNS 提供程序配置
您可以使用 Secrets Manager CLI 将 DNS 提供程序配置添加到服务实例。 只能使用 API 来配置手动 DNS 提供程序。
要从 IBM Cloud CLI 配置密钥引擎,请运行 ibmcloud secrets-manager configuration-create
命令。
ibmcloud secrets-manager configuration-create {
"cloud_internet_services_apikey": "MY_APIKEY_WITH_MANAGER_ACCESS_TO_CIS",
"cloud_internet_services_crn": "MY_CIS_CRN",
"config_type": "public_cert_configuration_dns_cloud_internet_services",
"name": "my-cloud-internet-services-config"}'
如果选择使用自己的 DNS 提供程序,请参阅提供程序的文档以获取指示信息。 Secrets Manager中不需要 DNS 提供程序配置。
使用 API 添加 DNS 提供程序配置
您可以使用 Secrets Manager API 将 DNS 提供程序配置添加到服务实例。
如果选择使用自己的 DNS 提供程序,请参阅提供程序的文档以获取指示信息。 Secrets Manager中不需要 DNS 提供程序配置。
配置Cloud Internet Services (CIS)
以下示例显示可用于将 Cloud Internet Services (CIS) DNS 配置添加到 Secrets Manager 实例的查询。 调用 API 时,请将 cis_crn
值替换为包含域的 CIS 实例的 CRN。
如果需要访问位于其他帐户中的 CIS 实例,请提供一个 cis_apikey
值,其中包含在 Internet Services (internet-svs
) 服务上具有 Manager 服务访问权的 API 密钥。 有关更多信息,请参阅 授予对 CIS的服务访问权。
curl -X POST
--H "Authorization: Bearer {iam_token}" \
--H "Accept: application/json" \
--H "Content-Type: application/json" \
--d '{
"cloud_internet_services_apikey": "5ipu_ykv0PMp2MhxQnDMn7VzrkSlBwi3BOI8uthi_EXZ",
"cloud_internet_services_crn": "crn:v1:bluemix:public:internet-svcs:global:a/128e84fcca45c1224aae525d31ef2b52:009a0357-1460-42b4-b903-10580aba7dd8::",
"config_type": "public_cert_configuration_dns_cloud_internet_services",
"name": "cloud-internet-services-config"
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/configurations"
成功响应会将配置添加到服务实例。 有关必需和可选请求参数的更多信息,请参阅 添加配置。
配置经典基础架构
以下示例显示可用于将经典基础架构 DNS 配置添加到 Secrets Manager 实例的查询。 调用 API 时,请替换 classic_infrastructure_username
和 classic_infastructure_password
(API 密钥) 值。
curl -X POST
--H 'Authorization: Bearer {iam_token}" \
--H "Accept: application/json" \
--H "Content-Type: application/json" \
--d '{
"classic_infrastructure_password": "sRBm1jkHOH2kn9oBnK5R0ODsRBm1jkHOH2kn9oBnK5R0ODsRBm1jkHOH2kn9oBnK5R0OD",
"classic_infrastructure_username": "1234567_JohnDoe@mail.com",
"config_type": "public_cert_configuration_dns_classic_infrastructure",
"name": "classic-infrastructure-config"
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/configurations"
成功响应会将配置添加到服务实例。 有关必需和可选请求参数的更多信息,请参阅 添加配置。
使用 Terraform 添加 DNS 提供程序配置
您可以使用 Terraform for Secrets Manager将 DNS 提供程序配置添加到服务实例。
如果选择使用自己的 DNS 提供程序,请参阅提供程序的文档以获取指示信息。 Secrets Manager中不需要 DNS 提供程序配置。
使用 Terraform 配置 Cloud Internet Services (CIS)
以下示例显示可用于将 Cloud Internet Services (CIS) DNS 配置添加到 Secrets Manager 实例的配置。
resource "ibm_sm_public_certificate_configuration_dns_cis" "my_dns_cis_config" {
instance_id = local.instance_id
region = local.region
name = "my_DNS_CIS_config"
cloud_internet_services_apikey = var.my_cis_apikey
cloud_internet_services_crn = var.my_cis_crn
}
使用 Terraform 配置经典基础架构
以下示例显示了可用于将经典基础架构 DNS 配置添加到 Secrets Manager 实例的配置。
resource "ibm_sm_public_certificate_configuration_dns_classic_infrastructure" "my_dns_classic_config" {
instance_id = local.instance_id
region = local.region
name = "my_DNS_config"
classic_infrastructure_password = "username"
classic_infrastructure_username = "password"
}
在 UI 中删除 DNS 提供程序配置
如果不再需要配置,那么可以使用 Secrets Manager UI 将其删除。
删除配置后,无法再自动轮换与 DNS 提供程序相关联的证书。 请勿删除与生产应用程序或服务中的证书相关联的配置。
-
在控制台中,单击 菜单 图标
> 资源列表。
-
从服务列表中,选择 Secrets Manager的实例。
-
在“密钥引擎”页面中,单击 公用证书 选项卡。
-
使用 DNS 提供者部分 表来查看实例中的配置。
-
在要删除的配置的行中,单击 操作 菜单
> 删除。
-
输入配置的名称以确认其删除。
-
单击删除。
使用 API 删除 DNS 提供程序配置
您可以通过调用 Secrets Manager API 来删除配置。
以下示例显示可用于从实例中除去 DNS 提供程序配置的查询。 调用 API 时,请将 {config_name}
替换为要删除的配置的名称。
删除配置后,无法再自动轮换与 DNS 提供程序相关联的证书。 请勿删除与生产应用程序或服务中的证书相关联的配置。
curl -X DELETE
--H "Authorization: Bearer {iam_token}" \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/configurations/{name}"
成功的响应将从服务实例中除去配置。 有关必需和可选请求参数的更多信息,请参阅 除去配置。
在 UI 中检索 DNS 提供者配置
您可以使用 Secrets Manager UI 来检索 DNS 提供程序的值。
- 在 公用证书 私钥引擎中,单击 DNS 提供程序表中的 操作 菜单
以打开引擎配置的选项列表。
- 要查看配置值,请单击 查看配置。
- 确保您处于安全环境中后,单击 确认。
将显示密钥值 15 秒,然后关闭对话框。
使用 CLI 检索 DNS 提供程序配置
您可以使用 Secrets Manager CLI 来检索 DNS 提供者的值。 在以下示例命令中,将引擎配置名称替换为配置的名称。
ibmcloud secrets-manager configuration --name EXAMPLE_CONFIG --service-url https://{instance_ID}.{region}.secrets-manager.appdomain.cloud
将 {instance_ID}
和 {region}
替换为适用于 Secrets Manager 服务实例的值。 要查找特定于您的实例的端点 URL,可以从Secrets Manager中的端点页面复制该 URL。用户界面。 有关更多信息,请参阅 查看端点 URL
使用 API 检索 DNS 提供程序配置
您可以使用 Secrets Manager API 来检索 DNS 提供程序的值。 在以下示例请求中,将引擎配置名称替换为配置的名称。
curl -X GET --location --header "Authorization: Bearer {iam_token}" \
--header "Accept: application/json" \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/configurations/{name}"
将 {instance_ID}
和 {region}
替换为适用于 Secrets Manager 服务实例的值。 要查找特定于您的实例的端点 URL,可以从Secrets Manager中的端点页面复制该 URL。用户界面。 有关更多信息,请参阅 查看端点 URL
成功响应将返回引擎配置的值以及其他元数据。 有关必需和可选请求参数的更多信息,请参阅 获取私钥。
后续步骤
- 订购证书。