Um pacote de confiança, também conhecido como lista de confiança, é um grupo de âncoras de confiança, como entidades, que são inerentemente confiáveis e cuja confiança não é transferida por outra entidade (terceiros confiáveis). Essas âncoras de confiança são fornecidas como certificados de autoridade de certificação (CA). O algoritmo de criação de caminhos de certificação usa esses certificados de CA para estabelecer uma cadeia entre um certificado que recebe validação e as âncoras de confiança.
O Google Distributed Cloud (GDC) com isolamento físico tem pacotes de confiança dedicados. Este guia descreve as etapas para buscar o pacote de confiança dos administradores organizacionais.
Tipos de pacote de confiança
O Distributed Cloud oferece dois tipos de pacotes de confiança gerenciados para administradores de plataforma:
trust-store-root-ext
: contém a CA raiz interna e a CA web-tls. O conteúdo é diferente dependendo de onde ele reside, como a raiz ou a organização do locatário. Use esse pacote de confiança para se comunicar entre limites da organização ou acessar serviços como armazenamento de objetos dentro da organização.trust-store-global-root-ext
: disponível no servidor de API global e no namespaceplatform
do servidor de API zonal. Quando o servidor de API global estiver pronto, o pacote vai preencher todos os outros dados zonaistrust-store-root-ext
, incluindo dados locais.
Buscar o pacote de confiança
É possível buscar pacotes de confiança do endpoint de servidor conhecido ou do
cluster usando kubectl
.
Buscar do servidor conhecido
O GDC oferece uma maneira segura de acessar pacotes de confiança
por um endpoint de servidor conhecido. Use esse método quando precisar buscar o pacote
trust-store-global-root-ext
sem interagir diretamente com o
cluster usando kubectl
.
Exporte as seguintes variáveis de ambiente:
export STORAGE=STORAGE export ORG_NAME=ORG_NAME
Substitua:
STORAGE
: o caminho do diretório em que você quer armazenar o arquivo do pacote de confiança.ORG_NAME
: o nome da organização no GDC.
Defina a variável de ambiente
WELL_KNOWN_URL
:export WELL_KNOWN_URL=https://console.${ORG_NAME:?}.zone1.google.gdch.test/.well-known/certificate-authority
Defina a variável de ambiente
GLOBAL_TRUST_BUNDLE_FILE
. Esse arquivo armazena o pacote de confiança do GDC localmente no local$STORAGE
especificado.export GLOBAL_TRUST_BUNDLE_FILE="$STORAGE/global/ca-bundles/global-trust-bundle"
Extraia o pacote de confiança
trust-store-global-root-ext
do servidor conhecido e armazene-o no arquivo criado na etapa anterior:echo -n | curl ${WELL_KNOWN_URL:?} > ${GLOBAL_TRUST_BUNDLE_FILE:?}
O arquivo de pacote de confiança buscado contém um ou mais certificados de CA. A resposta será semelhante a:
-----BEGIN CERTIFICATE----- MIIC8TCCAdmgAwIBAgIRAODQ/dOB39RBs8ZpN0RujIswDQYJKoZIhvcNAQELBQAw EjEQMA4GA1UEAxMHcm9vdC1jYTAeFw0yNTAxMDYwNzM3MzVaFw00ODEyMzEwNzM3 MzVaMBIxEDAOBgNVBAMTB3Jvb3QtY2EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw ggEKAoIBAQC41U4+3M1EAHggUBw5ki97533zTvwHukmZyORwbQ3tlQ4GQDscoCEh nn+KCaG767VCaGDcQhq99hl6qa/nBoc1X6WQ3a/uhv5E2ztRD40PB5NFNdSulxTH gsitukSmv+DAx15UJnVkJtPP/FzxEWPu0piIiFZakTxT83VUSs54QRmTahxP80FI R0xZ0ohsu9jzA2CAyxTccJU0/xE2kDwN8c8kiYYuG+czMdNVdnT4Jm2ToSkzIDux Yi9MzNmarVGG/rtW5SlqnUMYzSsxtUYSmMRlCsFDVxkSzfmICmTRw2zmNkFA/3nz XneVSIsUHOA2NzvMN4eoLTVRgSFcHlZRAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIB hjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTEeB0EQwhc5p++GhwNymsBfN93 WjANBgkqhkiG9w0BAQsFAAOCAQEAKBqn4AXjUWmhIUOrWQ5cetsmI76Wl+RBeSzU HxbqMBH8Dk1oJbGHtmQbu7EmWz1pKYge650s9N83hMgjFZD24t9GiQZ7YY+i+317 D6HzJ8VIKPnxVtnUIQzCpkRTQoglDlb1f/7+fi2SYJoHdhnRI/3OaVQTnObjbW5T mBhsMxFKc0zGa3HIEm9SUH608V60xUPanl23YZ6X7W8nWAJfnzKvH+3q3Fz58u/S VR5t/FkbOktVtnU8AfcMKLof6KG2KhE2L7FAC+fp0ZsjV9vE2uqlZ+8mIQHyc3tM cbWxOx+SO/XUCenY9C1yrublln9aOEn4/s3aSURPguiSZOfDyQ== -----END CERTIFICATE-----
Extrair do cluster usando kubectl
É possível buscar pacotes de confiança diretamente do cluster do GDC usando a ferramenta de linha de comando kubectl
. Use esse método se tiver
acesso direto ao cluster e à configuração dele e precisar buscar os pacotes de confiança
trust-store-root-ext
ou trust-store-global-root-ext
.
Antes de concluir as etapas desta seção, você precisa ter o seguinte:
- Permissões necessárias: peça ao administrador do IAM da organização para conceder a você o papel de Leitor da loja de confiança (
trust-store-viewer
). - Arquivo kubeconfig: faça login e
gere o arquivo kubeconfig para o servidor da API Management
se você ainda não tiver um. Você precisa do caminho para o arquivo kubeconfig para
substituir
MANAGEMENT_API_SERVER_KUBECONFIG
nas etapas a seguir.
Extraia o pacote de confiança do cluster usando kubectl
:
Exporte as seguintes variáveis de ambiente:
export KUBECONFIG=MANAGEMENT_API_SERVER_KUBECONFIG export STORAGE=STORAGE export ZONE=ZONE
Substitua:
MANAGEMENT_API_SERVER_KUBECONFIG
: o caminho até o arquivo kubeconfig do servidor da API Management.STORAGE
: o caminho do diretório em que você quer armazenar o arquivo do pacote de confiança.ZONE
: o nome da sua zona do GDC.
Defina a variável de ambiente
TRUST_BUNDLE_FILE
. Esse arquivo armazena o pacote de confiança do GDC localmente no local$STORAGE
especificado para seu$ZONE
do GDC:export TRUST_BUNDLE_FILE="$STORAGE/$ZONE/ca-bundles/trust-bundle" export GLOBAL_TRUST_BUNDLE_FILE="$STORAGE/global/ca-bundles/global-trust-bundle"
Defina a variável de ambiente
NS
para o namespace:export NS=platform
Consiga as autoridades certificadoras (CA) e armazene-as no arquivo criado na etapa 2:
Para obter
trust-store-root-ext
:kubectl --kubeconfig ${KUBECONFIG} get secret trust-store-root-ext -n ${NS} -o go-template='{{ index .data "ca.crt" }}' | base64 -d | sed '$a\' > ${TRUST_BUNDLE_FILE}
Para obter
trust-store-global-root-ext
:kubectl --kubeconfig ${KUBECONFIG} get secret trust-store-global-root-ext -n ${NS} -o go-template='{{ index .data "ca.crt" }}' | base64 -d | sed '$a\' > ${GLOBAL_TRUST_BUNDLE_FILE}
O arquivo de pacote de confiança buscado contém um ou mais certificados de CA. A resposta será semelhante a:
-----BEGIN CERTIFICATE----- MIIC8TCCAdmgAwIBAgIRAODQ/dOB39RBs8ZpN0RujIswDQYJKoZIhvcNAQELBQAw EjEQMA4GA1UEAxMHcm9vdC1jYTAeFw0yNTAxMDYwNzM3MzVaFw00ODEyMzEwNzM3 MzVaMBIxEDAOBgNVBAMTB3Jvb3QtY2EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw ggEKAoIBAQC41U4+3M1EAHggUBw5ki97533zTvwHukmZyORwbQ3tlQ4GQDscoCEh nn+KCaG767VCaGDcQhq99hl6qa/nBoc1X6WQ3a/uhv5E2ztRD40PB5NFNdSulxTH gsitukSmv+DAx15UJnVkJtPP/FzxEWPu0piIiFZakTxT83VUSs54QRmTahxP80FI R0xZ0ohsu9jzA2CAyxTccJU0/xE2kDwN8c8kiYYuG+czMdNVdnT4Jm2ToSkzIDux Yi9MzNmarVGG/rtW5SlqnUMYzSsxtUYSmMRlCsFDVxkSzfmICmTRw2zmNkFA/3nz XneVSIsUHOA2NzvMN4eoLTVRgSFcHlZRAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIB hjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTEeB0EQwhc5p++GhwNymsBfN93 WjANBgkqhkiG9w0BAQsFAAOCAQEAKBqn4AXjUWmhIUOrWQ5cetsmI76Wl+RBeSzU HxbqMBH8Dk1oJbGHtmQbu7EmWz1pKYge650s9N83hMgjFZD24t9GiQZ7YY+i+317 D6HzJ8VIKPnxVtnUIQzCpkRTQoglDlb1f/7+fi2SYJoHdhnRI/3OaVQTnObjbW5T mBhsMxFKc0zGa3HIEm9SUH608V60xUPanl23YZ6X7W8nWAJfnzKvH+3q3Fz58u/S VR5t/FkbOktVtnU8AfcMKLof6KG2KhE2L7FAC+fp0ZsjV9vE2uqlZ+8mIQHyc3tM cbWxOx+SO/XUCenY9C1yrublln9aOEn4/s3aSURPguiSZOfDyQ== -----END CERTIFICATE-----