Mengambil paket kepercayaan GDC

Paket kepercayaan, juga dikenal sebagai daftar kepercayaan, adalah grup anchor kepercayaan, seperti entitas, yang secara inheren dipercaya dan kepercayaannya tidak ditransfer oleh entitas lain (pihak ketiga tepercaya). Anchor tepercaya ini dikirimkan sebagai sertifikat certificate authority (CA). Algoritma pembuatan jalur sertifikasi menggunakan sertifikat CA ini untuk membuat rantai antara sertifikat yang mendapatkan validasi dan trust anchor.

Google Distributed Cloud (GDC) dengan air gap memiliki paket kepercayaan khusus. Panduan ini menguraikan langkah-langkah untuk mengambil paket kepercayaan bagi administrator organisasi.

Jenis paket kepercayaan

Distributed Cloud menyediakan dua jenis paket kepercayaan terkelola untuk administrator platform:

  • trust-store-root-ext: berisi CA root internal dan CA web-tls. Kontennya berbeda, bergantung pada tempat konten tersebut berada, seperti root atau organisasi tenant. Gunakan paket kepercayaan ini untuk berkomunikasi di seluruh batas organisasi atau untuk mengakses layanan seperti penyimpanan objek dalam organisasi.

  • trust-store-global-root-ext: tersedia di server API global dan namespace server API platform zonal. Saat server API global siap, paket akan mengisi semua data trust-store-root-ext zonal lainnya, termasuk data lokal.

Mengambil paket kepercayaan

Anda dapat mengambil paket kepercayaan dari endpoint server yang sudah dikenal, atau dari cluster menggunakan kubectl.

Mengambil dari server terkenal

GDC menyediakan cara yang aman untuk mengakses paket kepercayaan melalui endpoint server yang terkenal. Gunakan metode ini saat Anda perlu mengambil paket trust-store-global-root-ext tanpa berinteraksi langsung dengan cluster menggunakan kubectl.

  1. Ekspor variabel lingkungan berikut:

    export STORAGE=STORAGE
    export ORG_NAME=ORG_NAME
    

    Ganti kode berikut:

    • STORAGE: jalur direktori tempat Anda ingin menyimpan file paket kepercayaan.
    • ORG_NAME: nama organisasi Anda dalam GDC.
  2. Tetapkan variabel lingkungan WELL_KNOWN_URL:

    export WELL_KNOWN_URL=https://console.${ORG_NAME:?}.zone1.google.gdch.test/.well-known/certificate-authority
    
  3. Tetapkan variabel lingkungan GLOBAL_TRUST_BUNDLE_FILE. File ini menyimpan paket kepercayaan GDC secara lokal di lokasi $STORAGE yang Anda tentukan.

    export GLOBAL_TRUST_BUNDLE_FILE="$STORAGE/global/ca-bundles/global-trust-bundle"
    
  4. Dapatkan paket kepercayaan trust-store-global-root-ext dari server terkenal dan simpan di file yang dibuat pada langkah sebelumnya:

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

    File paket kepercayaan yang diambil berisi satu atau beberapa sertifikat CA. Outputnya mirip dengan hal berikut:

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

Mengambil dari cluster menggunakan kubectl

Anda dapat mengambil paket kepercayaan langsung dari cluster GDC menggunakan alat command line kubectl. Gunakan metode ini jika Anda memiliki akses langsung ke cluster dan konfigurasinya, dan Anda perlu mengambil paket kepercayaan trust-store-root-ext atau trust-store-global-root-ext.

Anda harus mendapatkan hal berikut sebelum dapat menyelesaikan langkah-langkah di bagian ini:

  • Izin yang diperlukan: Minta Admin IAM Organisasi Anda untuk memberi Anda peran Trust Store Viewer (trust-store-viewer).
  • File kubeconfig: Login dan buat file kubeconfig untuk server Management API jika Anda belum memilikinya. Anda memerlukan jalur ke file kubeconfig untuk menggantikan MANAGEMENT_API_SERVER_KUBECONFIG dalam langkah-langkah berikut.

Ambil paket kepercayaan dari cluster menggunakan kubectl:

  1. Ekspor variabel lingkungan berikut:

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

    Ganti kode berikut:

    • MANAGEMENT_API_SERVER_KUBECONFIG: jalur ke kubeconfig server Management API.
    • STORAGE: jalur direktori tempat Anda ingin menyimpan file paket kepercayaan.
    • ZONE: nama zona GDC Anda.
  2. Menetapkan variabel lingkungan TRUST_BUNDLE_FILE. File ini menyimpan paket kepercayaan GDC secara lokal di lokasi $STORAGE yang ditentukan untuk $ZONE GDC Anda:

    export TRUST_BUNDLE_FILE="$STORAGE/$ZONE/ca-bundles/trust-bundle"
    export GLOBAL_TRUST_BUNDLE_FILE="$STORAGE/global/ca-bundles/global-trust-bundle"
    
  3. Tetapkan variabel lingkungan namespace NS untuk namespace:

    export NS=platform
    
  4. Dapatkan otoritas sertifikat (CA) dan simpan di file yang dibuat pada langkah 2:

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

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

    File paket kepercayaan yang diambil berisi satu atau beberapa sertifikat CA. Outputnya mirip dengan hal berikut:

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