证书映射会引用一个或多个证书映射条目,以将特定证书分配给特定主机名。本页面介绍了如何创建和管理证书映射。
如需了解详情,请参阅证书映射。
创建证书映射
您可以创建证书映射,以引用与证书关联的证书映射条目。
控制台
在 Google Cloud 控制台中,前往 Certificate Manager 页面,然后点击证书映射标签页。
点击 创建证书映射。
在名称字段中,输入证书映射的名称,例如
cert-map-8。在说明字段中,输入证书映射的说明,例如
My new certificate map。如需创建证书映射条目并将其添加到证书映射,请点击 添加映射条目,然后按照后续部分中提到的步骤操作。
如需添加标签并将其与证书映射相关联,请点击 添加标签,然后输入标签的键和值。
点击创建。
gcloud
如需创建证书映射,请使用 gcloud certificate-manager maps create 命令:
gcloud certificate-manager maps create CERTIFICATE_MAP_NAME
替换以下内容:
CERTIFICATE_MAP_NAME:证书映射的名称
API
如需创建证书映射,请向 certificateMaps.create 方法发出 POST 请求:
POST /v1/projects/PROJECT_ID/locations/global/certificateMaps?certificate_map_id=CERTIFICATE_MAP_NAME
替换以下内容:
PROJECT_ID:您的 Google Cloud 项目的 IDCERTIFICATE_MAP_NAME:证书映射的名称
Terraform
如需创建证书映射,请使用 google_certificate_manager_certificate_map 资源:
如需了解如何应用或移除 Terraform 配置,请参阅基本 Terraform 命令。
将证书映射附加到代理
创建并配置包含证书映射条目的证书映射后,将该证书映射附加到目标代理。Certificate Manager 支持具有全球范围的目标 HTTPS 代理和目标 SSL 代理。如需详细了解这些代理类型之间的差异,请参阅使用目标代理。
如果您将 TLS (SSL) 证书附加到目标代理,同时还通过证书映射附加证书,则代理会使用证书映射中引用的证书,并忽略直接附加的证书。
gcloud
如需将证书映射附加到目标 HTTPS 代理,请使用 gcloud compute target-https-proxies update 命令:
gcloud compute target-https-proxies update PROXY_NAME \
--certificate-map="CERTIFICATE_MAP_NAME"
如需将证书映射附加到目标 SSL 代理,请使用 gcloud compute target-ssl-proxies update 命令:
gcloud compute target-ssl-proxies update PROXY_NAME \
--certificate-map="CERTIFICATE_MAP_NAME"
替换以下内容:
PROXY_NAME:目标代理的名称CERTIFICATE_MAP_NAME:包含引用目标证书的映射条目的证书映射的名称
API
如需将证书映射附加到目标 HTTPS 代理,请向 targetHttpsProxies 方法发出 POST 请求:
POST /projects/PROJECT_ID/global/targetHttpsProxies/PROXY_NAME/setCertificateMap
{
certificateMap: "//certificatemanager.googleapis.com/projects/PROJECT_ID/locations/global/certificateMaps/CERTIFICATE_MAP_NAME",
}
如需将证书映射附加到目标 SSL 代理,请向 targetSslProxies 方法发出 POST 请求:
POST /projects/PROJECT_ID/global/targetSslProxies/PROXY_NAME/setCertificateMap
{
certificateMap: "//certificatemanager.googleapis.com/projects/PROJECT_ID/locations/global/certificateMaps/CERTIFICATE_MAP_NAME",
}
替换以下内容:
PROJECT_ID:您的 Google Cloud 项目的 IDPROXY_NAME:目标代理的名称CERTIFICATE_MAP_NAME:包含引用目标证书的映射条目的证书映射的名称
将证书映射从代理中分离
在从代理中分离证书映射之前,请注意以下事项:
如果有任何 TLS (SSL) 证书直接附加到代理,分离证书映射会导致代理恢复使用这些证书。
如果没有直接附加到代理的 TLS (SSL) 证书,则无法分离证书映射。在分离证书映射之前,请至少将一个 TLS 证书直接附加到代理。
gcloud
如需从目标 HTTPS 代理分离所有已附加的证书映射,请使用 gcloud compute target-https-proxies update 命令:
gcloud compute target-https-proxies update PROXY_NAME \
--clear-certificate-map
如需从目标 SSL 代理分离所有已附加的证书映射,请使用 gcloud compute target-ssl-proxies update 命令:
gcloud compute target-ssl-proxies update PROXY_NAME \
--clear-certificate-map
替换以下内容:
PROXY_NAME:目标代理的名称
API
如需从目标 HTTPS 代理分离所有已附加的证书映射,请向 targetHttpsProxies 方法发出 POST 请求:
POST /projects/PROJECT_ID/global/targetHttpsProxies/PROXY_NAME/setCertificateMap
{
certificateMap: "",
}
如需从目标 SSL 代理中分离所有已附加的证书映射,请向 targetSslProxies 方法发出 POST 请求:
POST /projects/PROJECT_ID/global/targetSslProxies/PROXY_NAME/setCertificateMap
{
certificateMap: "",
}
替换以下内容:
PROJECT_ID:您的 Google Cloud 项目的 IDPROXY_NAME:目标代理的名称
更新证书映射
您可以更新证书映射的说明和标签。如果您使用Google Cloud 控制台,则可以向证书映射添加新的映射条目,也可以修改或删除与证书映射关联的映射条目。
控制台
在 Google Cloud 控制台中,前往 Certificate Manager 页面,然后点击证书映射标签页。
在证书映射列表中,点击所需的证书映射。系统会打开证书映射详情页面。
点击修改。系统随即会打开修改证书映射页面。
在说明字段中,输入证书映射的新说明。
如需向证书映射添加新映射条目,请点击 添加映射条目,然后按照创建证书映射条目部分中提到的步骤操作。
如需修改证书映射条目,请在相应证书映射条目行的操作列下点击 图标,选择修改,然后按照更新证书映射条目部分中提到的步骤操作。
如需删除证书映射条目,请在证书映射条目行的操作列下点击 图标,选择删除,然后按照删除证书映射条目部分中提到的步骤操作。
您可以添加、删除或更新与证书映射关联的标签。
如需添加标签,请点击 添加标签,然后为标签指定键和值。
如需删除标签,请点击所需标签对应的 删除标签。
点击保存。
gcloud
如需更新证书映射,请使用 gcloud certificate-manager maps update 命令:
gcloud certificate-manager maps update CERTIFICATE_MAP_NAME \
--description="DESCRIPTION"
--update-labels="LABELS"
替换以下内容:
CERTIFICATE_MAP_NAME:证书映射的名称DESCRIPTION:相应证书映射的新说明LABELS:应用于此证书映射的标签列表(以逗号分隔)
API
如需更新证书映射,请向 certificateMaps.patch 方法发出 PATCH 请求:
PATCH /v1/projects/PROJECT_ID/locations/global/certificateMaps/CERTIFICATE_MAP_NAME?updateMask=labels,description
{
"description": "DESCRIPTION",
"labels": {
"LABEL_KEY": "LABEL_VALUE",
}
}
替换以下内容:
PROJECT_ID:您的 Google Cloud 项目的 IDCERTIFICATE_MAP_NAME:证书映射的名称DESCRIPTION:相应证书映射的新说明LABEL_KEY:应用于相应证书映射的标签键LABEL_VALUE:应用于此证书映射的标签
列出证书映射
您可以查看、过滤和排序您创建的所有证书映射的列表。
控制台
在 Google Cloud 控制台中,前往 Certificate Manager 页面。
点击证书映射标签页。您可以查看、过滤和配置所选项目中所有证书映射的显示列。
gcloud
如需列出证书映射,请使用 gcloud certificate-manager maps list 命令:
gcloud certificate-manager maps list \
--filter="FILTER" \
--page-size="PAGE_SIZE" \
--limit="LIMIT" \
--sort-by="SORT_BY"
替换以下内容:
FILTER:一种表达式,用于将返回的结果限制为特定值。例如,如需按标签和创建时间过滤结果,您可以指定:
--filter='labels.key:value AND create_time > "2021-09-01T00:00:00Z"'。如需查看更多可与 Certificate Manager 搭配使用的过滤条件示例,请参阅 Cloud Key Management Service 文档中的对列表结果进行排序和过滤。
PAGE_SIZE:您希望每页返回的结果数LIMIT:您要返回的结果数上限SORT_BY:以逗号分隔的name字段列表,用于指定返回结果的排序依据。默认排序顺序是升序;如需降序排序,请在相应字段前面加上波浪号 (~)。
API
如需列出已配置的证书映射,请向 certificateMaps.list 方法发出 LIST 请求:
GET /v1/projects/PROJECT_ID/locations/global/certificateMaps?filter=FILTER&pageSize=PAGE_SIZE&sortBy=SORT_BY
替换以下内容:
PROJECT_ID:您的 Google Cloud 项目的 IDFILTER:一种表达式,用于将返回的结果限制为特定值。例如,如需按标签和创建时间过滤结果,您可以指定:
--filter='labels.key:value AND create_time > "2021-09-01T00:00:00Z"'如需查看更多可与 Certificate Manager 搭配使用的过滤条件示例,请参阅 Cloud Key Management Service 文档中的对列表结果进行排序和过滤。
PAGE_SIZE:您希望每页返回的结果数SORT_BY:以逗号分隔的name字段列表,用于指定返回结果的排序依据。默认排序顺序是升序;如需降序排序,请在相应字段前面加上波浪号 (~)。
查看证书映射的详细信息
您可以查看现有证书映射的详细信息,例如其创建日期和时间、上次更新日期和时间以及说明。
控制台
在 Google Cloud 控制台中,前往 Certificate Manager 页面,然后点击证书映射标签页。
在证书映射列表中,点击所需的证书映射。系统随即会打开证书映射详细信息页面,其中包含有关所选证书映射的详细信息。
gcloud
如需查看证书映射的详细信息,请使用 gcloud certificate-manager maps describe 命令:
gcloud certificate-manager maps describe CERTIFICATE_MAP_NAME
替换以下内容:
CERTIFICATE_MAP_NAME:证书映射的名称
API
如需查看证书映射的详细信息,请向 certificateMaps.get 方法发出 GET 请求:
GET /v1/projects/PROJECT_ID/locations/global/certificateMaps/CERTIFICATE_MAP_NAME
替换以下内容:
PROJECT_ID:您的 Google Cloud 项目的 IDCERTIFICATE_MAP_NAME:证书映射的名称
删除证书映射
在删除证书映射之前,请执行以下操作:
- 从目标代理分离证书映射。
- 如果任何证书映射条目已分配给该映射,请删除分配给该证书映射的证书映射条目。
控制台
在 Google Cloud 控制台中,前往 Certificate Manager 页面,然后点击证书映射标签页。
在证书映射列表中,点击所需的证书映射。系统会打开证书映射详情页面。
点击 删除,然后点击删除。
gcloud
如需删除证书映射,请使用 gcloud certificate-manager maps delete 命令:
gcloud certificate-manager maps delete CERTIFICATE_MAP_NAME
替换以下内容:
CERTIFICATE_MAP_NAME:证书映射的名称
API
如需删除证书映射,请向 certificateMaps.delete 方法发出 DELETE 请求:
DELETE /v1/projects/PROJECT_ID/locations/global/certificateMaps/CERTIFICATE_MAP_NAME
替换以下内容:
PROJECT_ID:您的 Google Cloud 项目的 IDCERTIFICATE_MAP_NAME:证书映射的名称