Obtenha pacotes de fidedignidade do GDC

Um conjunto de confiança, também conhecido como uma lista de confiança, é um grupo de pontos de confiança, como entidades, que são inerentemente fidedignos e cuja confiança não é transferida por outra entidade (terceiros fidedignos). Estas âncoras de confiança são fornecidas como certificados da autoridade de certificação (AC). O algoritmo de criação do caminho de certificação usa estes certificados de AC para estabelecer uma cadeia entre um certificado que recebe validação e as âncoras de confiança.

O Google Distributed Cloud (GDC) air-gapped tem pacotes de confiança dedicados. Este guia descreve os passos para obter o pacote de confiança para administradores organizacionais.

Tipos de pacotes de confiança

A nuvem distribuída oferece dois tipos de conjuntos de confiança geridos para administradores da plataforma:

  • trust-store-root-ext: contém a AC de raiz interna e a AC web-tls. O conteúdo é diferente consoante a localização, como a raiz ou a organização inquilina. Use este conjunto de confiança para comunicar entre limites da organização ou para aceder a serviços como o armazenamento de objetos na organização.

  • trust-store-global-root-ext: disponível no servidor da API global e no espaço de nomes do servidor da API zonal platform. Quando o servidor da API global estiver pronto, o pacote preenche todos os outros dados trust-store-root-ext zonais, incluindo dados locais.

Obtenha o pacote de confiança

Pode obter pacotes de fidedignidade do ponto final do servidor conhecido ou do cluster através de kubectl.

Obtenha a partir do servidor conhecido

O GDC oferece uma forma segura de aceder a pacotes de confiança através de um ponto final do servidor conhecido. Use este método quando precisar de obter o pacote trust-store-global-root-ext sem interagir diretamente com o cluster através de kubectl.

  1. Exporte as seguintes variáveis de ambiente:

    export STORAGE=STORAGE
    export ORG_NAME=ORG_NAME
    

    Substitua o seguinte:

    • STORAGE: o caminho do diretório onde quer armazenar o ficheiro do pacote de confiança.
    • ORG_NAME: o nome da sua organização no GDC.
  2. Defina a variável de ambiente WELL_KNOWN_URL:

    export WELL_KNOWN_URL=https://console.${ORG_NAME:?}.google.gdch.test/.well-known/certificate-authority
    
  3. Defina a GLOBAL_TRUST_BUNDLE_FILEvariável de ambiente. Este ficheiro armazena o pacote de confiança da GDC localmente na $STORAGE localização especificada.

    export GLOBAL_TRUST_BUNDLE_FILE="$STORAGE/global/ca-bundles/global-trust-bundle"
    
  4. Obtenha o pacote de fidedignidade trust-store-global-root-ext do servidor conhecido e armazene-o no ficheiro criado no passo anterior:

    Linux

    echo -n | curl ${WELL_KNOWN_URL:?} > ${GLOBAL_TRUST_BUNDLE_FILE:?}
    

    Windows

    Invoke-WebRequest -Uri "https://console.${ORG_NAME}.google.gdch.test/.well-known/certificate-authority" -OutFile ".\global-trust-bundle.crt"
    

    O ficheiro do pacote de confiança obtido contém um ou mais certificados de AC. O resultado é semelhante ao seguinte:

    -----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-----
    

Obtenha dados do cluster através do kubectl

Pode obter pacotes de confiança diretamente do cluster do GDC através da ferramenta de linhas de comando kubectl. Use este método se tiver acesso direto ao cluster e à respetiva configuração, e precisar de obter os pacotes fidedignos trust-store-root-ext ou trust-store-global-root-ext.

Tem de obter o seguinte antes de poder concluir os passos nesta secção:

  • Autorizações necessárias: peça ao administrador de IAM da organização para lhe conceder a função Trust Store Viewer (trust-store-viewer).
  • Ficheiro kubeconfig: inicie sessão e gere o ficheiro kubeconfig para o servidor da API Management se ainda não tiver um. Precisa do caminho para o ficheiro kubeconfig para substituir MANAGEMENT_API_SERVER_KUBECONFIG nos passos seguintes.

Obtenha o pacote de confiança do cluster através do comando kubectl:

  1. Exporte as seguintes variáveis de ambiente:

    export KUBECONFIG=MANAGEMENT_API_SERVER_KUBECONFIG
    export STORAGE=STORAGE
    export ZONE=ZONE
    

    Substitua o seguinte:

    • MANAGEMENT_API_SERVER_KUBECONFIG: o caminho para o kubeconfig do servidor da API Management.
    • STORAGE: o caminho do diretório onde quer armazenar o ficheiro do pacote de confiança.
    • ZONE: o nome da zona do GDC.
  2. Defina a variável de ambiente TRUST_BUNDLE_FILE. Este ficheiro armazena o pacote de confiança do GDC localmente na $STORAGElocalização especificada para o seu GDC$ZONE:

    export TRUST_BUNDLE_FILE="$STORAGE/$ZONE/ca-bundles/trust-bundle"
    export GLOBAL_TRUST_BUNDLE_FILE="$STORAGE/global/ca-bundles/global-trust-bundle"
    
  3. Defina a variável de ambiente do espaço de nomes NS para o espaço de nomes:

    export NS=platform
    
  4. Obtenha as autoridades de certificação (AC) e armazene-as no ficheiro criado no passo 2:

    Para 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 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 ficheiro do pacote de confiança obtido contém um ou mais certificados de AC. O resultado é semelhante ao seguinte:

    -----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-----