証明書マップは、特定の証明書を特定のホスト名に割り当てる 1 つ以上の証明書マップエントリを参照します。このページでは、証明書マップの作成と管理方法について説明します。
詳細については、証明書マップをご覧ください。
証明書マップを作成する
証明書マップを作成して、証明書に関連付けられた証明書マップエントリを参照します。
このタスクに必要なロール
このタスクを実行するには、ターゲットの Google Cloud プロジェクトに対する次のいずれかの IAM ロールが必要です。
- Certificate Manager 編集者のロール(
roles/certificatemanager.editor
) - Certificate Manager オーナーのロール(
roles/certificatemanager.owner
)
詳細については、ロールと権限をご覧ください。
証明書マップを作成するには、gcloud certificate-manager maps create
コマンドを使用します。
gcloud certificate-manager maps createCERTIFICATE_MAP_NAME
以下を置き換えます。
CERTIFICATE_MAP_NAME
: 証明書マップの名前。
証明書マップを作成するには、certificateMaps.create
メソッドに POST
リクエストを送信します。
POST /v1/projects/PROJECT_ID /locations/global/certificateMaps?certificate_map_id=CERTIFICATE_MAP_NAME
以下を置き換えます。
PROJECT_ID
: Google Cloud プロジェクトの ID。CERTIFICATE_MAP_NAME
: 証明書マップの名前。
証明書マップを作成するには、google_certificate_manager_certificate_map
リソースを使用します。
Terraform 構成を適用または削除する方法については、基本的な Terraform コマンドをご覧ください。
証明書マップをプロキシに関連付ける
証明書マップエントリを使用して証明書マップを作成して構成したら、証明書マップをターゲット プロキシに関連付けます。Certificate Manager は、グローバル スコープのターゲット HTTPS プロキシとターゲット SSL プロキシの両方をサポートしています。これらのプロキシタイプの違いについて詳しくは、ターゲット プロキシを使用するをご覧ください。
TLS(SSL)証明書をターゲット プロキシに添付し、証明書マップを使用して証明書を添付すると、プロキシは証明書マップ内で参照される証明書を使用し、直接添付された証明書は無視されます。
このタスクに必要なロール
このタスクを実行するには、ターゲットの Google Cloud プロジェクトに対する次のいずれかの IAM ロールが必要です。
- Certificate Manager 編集者のロール(
roles/certificatemanager.editor
)
詳細については、ロールと権限をご覧ください。
証明書マップをターゲット HTTPS プロキシに添付するには、gcloud
compute target-https-proxies update
コマンドを使用します。
gcloud compute target-https-proxies updatePROXY_NAME \ --certificate-map="CERTIFICATE_MAP_NAME "
証明書マップをターゲット SSL プロキシに添付するには、gcloud compute
target-ssl-proxies update
コマンドを使用します。
gcloud compute target-ssl-proxies updatePROXY_NAME \ --certificate-map="CERTIFICATE_MAP_NAME "
以下を置き換えます。
PROXY_NAME
: ターゲット プロキシの名前CERTIFICATE_MAP_NAME
: ターゲット証明書を参照する証明書マップエントリを含む証明書マップの名前。
証明書マップをターゲット 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 プロジェクトの ID。PROXY_NAME
: ターゲット プロキシの名前CERTIFICATE_MAP_NAME
: ターゲット証明書を参照する証明書マップエントリを含む証明書マップの名前。
プロキシから証明書マップを切断する
プロキシから証明書マップを切断する前に、次の点に注意してください。
TLS(SSL)証明書がプロキシに直接添付されている場合、証明書マップを切断すると、プロキシは TLS(SSL)証明書の使用を再開します。
プロキシに直接 TLS(SSL)証明書が添付されていない場合、証明書マップを切断することはできません。証明書マップを切断する前に、少なくとも 1 つの TLS 証明書をプロキシに直接接続します。
このタスクに必要なロール
このタスクを実行するには、ターゲットの Google Cloud プロジェクトに対する次のいずれかの IAM ロールが必要です。
- Compute ロードバランサ管理者のロール(
roles/compute.loadBalancerAdmin
)
詳細については、ロールと権限をご覧ください。
ターゲット HTTPS プロキシから接続されている証明書マップを切断するには、gcloud compute target-https-proxies update
コマンドを使用します。
gcloud compute target-https-proxies updatePROXY_NAME \ --clear-certificate-map
ターゲット SSL プロキシから接続されている証明書マップを切断するには、gcloud compute target-ssl-proxies update
コマンドを使用します。
gcloud compute target-ssl-proxies updatePROXY_NAME \ --clear-certificate-map
以下を置き換えます。
PROXY_NAME
: ターゲット プロキシの名前
ターゲット 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 プロジェクトの ID。PROXY_NAME
: ターゲット プロキシの名前
証明書マップを更新する
証明書マップの説明とラベルを更新できます。
このタスクに必要なロール
このタスクを実行するには、ターゲットの Google Cloud プロジェクトに対する次のいずれかの IAM ロールが必要です。
- Certificate Manager 編集者のロール(
roles/certificatemanager.editor
) - Certificate Manager オーナーのロール(
roles/certificatemanager.owner
)
詳細については、ロールと権限をご覧ください。
証明書マップを更新するには、gcloud certificate-manager maps update
コマンドを使用します。
gcloud certificate-manager maps updateCERTIFICATE_MAP_NAME \ --description="DESCRIPTION " --update-labels="LABELS "
以下を置き換えます。
CERTIFICATE_MAP_NAME
: 証明書マップの名前。DESCRIPTION
: この証明書マップの新しい説明。LABELS
: この証明書マップに適用されるラベルのカンマ区切りリスト。
証明書マップを更新するには、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 プロジェクトの ID。CERTIFICATE_MAP_NAME
: 証明書マップの名前。DESCRIPTION
: この証明書マップの新しい説明。LABEL_KEY
: この証明書マップに適用されるラベルキー。LABEL_VALUE
: この証明書マップに適用されるラベル。
証明書マップの一覧表示
プロジェクトで構成されたすべての証明書マップを一覧表示、フィルタ、並べ替えることができます。
このタスクに必要なロール
このタスクを実行するには、ターゲットの Google Cloud プロジェクトに対する次のいずれかの IAM ロールが必要です。
- Certificate Manager 閲覧者のロール(
roles/certificatemanager.viewer
) - Certificate Manager 編集者のロール(
roles/certificatemanager.editor
) - Certificate Manager オーナーのロール(
roles/certificatemanager.owner
)
詳細については、ロールと権限をご覧ください。
証明書マップを一覧表示するには、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
フィールドのカンマ区切りリスト。 デフォルトの並べ替え順は昇順です。降順で並べ替えるには、フィールドの先頭にチルダ(~
)を付けます。
構成済みの証明書マップを一覧表示するには、certificateMaps.list
メソッドに LIST
リクエストを送信します。
GET /v1/projects/PROJECT_ID /locations/global/certificateMaps?filter=FILTER &pageSize=PAGE_SIZE &sortBy=SORT_BY
以下を置き換えます。
PROJECT_ID
: Google Cloud プロジェクトの ID。FILTER
: 返される結果を特定の値に制限する式。たとえば、ラベルと作成時間で結果をフィルタするには、次のように指定します。
--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 プロジェクトに対する次のいずれかの IAM ロールが必要です。
- Certificate Manager 閲覧者のロール(
roles/certificatemanager.viewer
) - Certificate Manager 編集者のロール(
roles/certificatemanager.editor
) - Certificate Manager オーナーのロール(
roles/certificatemanager.owner
)
詳細については、ロールと権限をご覧ください。
証明書マップの状態を表示するには、gcloud certificate-manager maps describe
コマンドを使用します。
gcloud certificate-manager maps describeCERTIFICATE_MAP_NAME
以下を置き換えます。
CERTIFICATE_MAP_NAME
: 証明書マップの名前。
証明書マップの詳細を表示するには、certificateMaps.get
メソッドに GET
リクエストを送信します。
GET /v1/projects/PROJECT_ID /locations/global/certificateMaps/CERTIFICATE_MAP_NAME
以下を置き換えます。
PROJECT_ID
: Google Cloud プロジェクトの ID。CERTIFICATE_MAP_NAME
: 証明書マップの名前。
証明書マップを削除する
証明書マップを削除する前に、次の操作を行います。
- ターゲット プロキシから証明書マップを切断します。
- マップに証明書マップエントリが割り当てられている場合は、証明書マップに割り当てられた証明書マップエントリを削除します。
このタスクに必要なロール
このタスクを実行するには、ターゲットの Google Cloud プロジェクトに対する次のいずれかの IAM ロールが必要です。
- Certificate Manager オーナーのロール(
roles/certificatemanager.owner
)
詳細については、ロールと権限をご覧ください。
証明書マップを削除するには、gcloud certificate-manager maps delete
コマンドを使用します。
gcloud certificate-manager maps deleteCERTIFICATE_MAP_NAME
以下を置き換えます。
CERTIFICATE_MAP_NAME
: 証明書マップの名前。
証明書マップを削除するには、certificateMaps.delete
メソッドに DELETE
リクエストを送信します。
DELETE /v1/projects/PROJECT_ID /locations/global/certificateMaps/CERTIFICATE_MAP_NAME
以下を置き換えます。
PROJECT_ID
: Google Cloud プロジェクトの ID。CERTIFICATE_MAP_NAME
: 証明書マップの名前。