Ottenere i valori di connessione per AWS Lambda ( AWS PKI)

Informazioni su questa attività

Seguire queste istruzioni per ottenere i valori di connessione relativi al tipo di autenticazione PKI " AWS " per AWS Lambda. È possibile ottenere il certificato client e la chiave privata utilizzando l'Autorità di certificazione privata OpenSSL o AWS (Autorità di certificazione privata AWS ).

Procedura

  1. Per ottenere il certificato client e la chiave privata client utilizzando OpenSSL,, procedere come segue:
    Importante: assicurati che sul tuo sistema sia installato OpenSSL.
    1. Aprire un terminale.
    2. Esegui i seguenti comandi in un terminale per creare una cartella di lavoro per i file dei certificati.
      mkdir -p ~/rolesanywhere-ca
      cd ~/rolesanywhere-ca
    3. Crea un file denominato openssl.cnf nella directory dell'area di lavoro dei certificati utilizzando un editor di testo.
    4. Incolla nel file la seguente configurazione minima di ` OpenSSL ` e salvala:
      [ req ]
      default_bits       = 2048
      distinguished_name = req_distinguished_name
      x509_extensions    = v3_ca
      prompt             = no
      
      [ req_distinguished_name ]
      C  = US
      ST = California
      L  = San Francisco
      O  = MyCompany
      OU = DevOps
      CN = MyRolesAnywhereCA
      
      [ v3_ca ]
      basicConstraints = critical, CA:TRUE
      keyUsage = critical, keyCertSign, cRLSign
      subjectKeyIdentifier = hash
      authorityKeyIdentifier = keyid:always,issuer
    5. Generare la chiave privata della CA.
      openssl genrsa -out ca.key 2048
    6. Generare il certificato CA autofirmato.
      openssl req -x509 -new -nodes \
        -key ca.key \
        -sha256 \
        -days 3650 \
        -out ca.pem \
        -config openssl.cnf
      
      # The self-signed CA certificate is valid for 10 years

      Il ca.pem file contiene il certificato CA radice.

    7. Carica il contenuto del file ca.pem generato nella console di gestione di AWS quando crei un trust anchor al punto 3.
    8. Crea un file di configurazione OpenSSL denominato leaf.cnf per il certificato.
    9. Incolla nel file il seguente codice di configurazione minimale di ` OpenSSL ` e salvalo:
      [ req ]
      default_bits       = 2048
      distinguished_name = req_distinguished_name
      req_extensions     = v3_req
      prompt             = no
      
      [ req_distinguished_name ]
      C  = US
      ST = California
      L  = San Francisco
      O  = MyCompany
      OU = DevOps
      CN = MyAppLeafCert
      
      [ v3_req ]
      basicConstraints = critical, CA:FALSE
      keyUsage = critical, digitalSignature, keyEncipherment
      extendedKeyUsage = clientAuth
      subjectKeyIdentifier = hash
    10. Generare la chiave privata del client.
      openssl genrsa -out leaf.key 2048
    11. Generare la richiesta di firma del certificato (CSR).
      openssl req -new \
        -key leaf.key \
        -out leaf.csr \
        -config leaf.cnf
    12. Copia e salva il leaf.key file. Questo è il valore della tua chiave privata del client.
    13. Firma il certificato del cliente utilizzando l'autorità di certificazione.
      openssl x509 -req \
        -in leaf.csr \
        -CA ca.pem \
        -CAkey ca.key \
        -CAcreateserial \
        -out leaf.pem \
        -days 365 \
        -sha256 \
        -extfile leaf.cnf \
        -extensions v3_req
    14. Copia e salva il leaf.pem file in modo sicuro. Questo è il valore del tuo certificato client.
    Suggerimento: se necessario, puoi crittografare i file.
  2. Per ottenere il certificato client e la chiave privata client tramite l'Autorità di certificazione privat AWS, procedere come segue:
    1. Accedi alla tua console di gestione di AWS.
    2. Vai all'Autorità di certificazione privata AWS.
    3. Fai clic sul pulsante «Crea una CA privata ».
    4. Seleziona la modalità desiderata dalle opzioni di modalità.
    5. Nelle opzioni relative al tipo CA, selezionare Root come tipo.
    6. Inserire i valori delle opzioni relative al nome distinto del soggetto come richiesto.
    7. Nella sezione " Opzioni algoritmo chiave ", selezionare l'algoritmo chiave e il livello di sicurezza desiderato.
    8. In "Opzioni di revoca dei certificati ", selezionare il metodo desiderato.
    9. Fai clic sul pulsante «Crea CA ».
      Nota: per informazioni dettagliate sulla creazione di un'autorità di certificazione privata, consultare la sezione "Creazione di una CA privata" nella pagina della documentazione " AWS " all'indirizzo AWS.
    10. Seleziona l'autorità di certificazione che hai creato.
    11. Vai su Azioni > Installa certificato CA.
    12. Nella sezione "Specifica i parametri del certificato CA radice ", inserisci i parametri del tuo certificato.
    13. Controlla le impostazioni, quindi fai clic su Conferma e installa.
      Nota: per informazioni dettagliate sull'installazione di un certificato CA, consultare la sezione "Installazione del certificato CA " nella pagina della documentazione " AWS ".
    14. Vai su AWS Certificate Manager nella tua console Amazon.
    15. Clicca sul pulsante «Richiedi un certificato ».
    16. Nel campo "Tipo di certificato ", seleziona "Richiedi un certificato privato".
    17. In " Autorità di certificazione ", selezionare l'autorità di certificazione privata creata al punto 2.i.
    18. Inserisci un nome nella sezione " Nomi di dominio ".
    19. Seleziona l 'algoritmo di crittografia che ti serve.
    20. Clicca sul pulsante "Richiedi".
    21. Per esportare il certificato, seleziona l'ID del certificato che hai creato.
    22. Fai clic sul pulsante "Esporta".
    23. Inserisci e conferma una passphrase. Questo è il valore della password della chiave client corrispondente alla chiave privata.
    24. Fai clic sul pulsante "Genera codifica PEM ".
    25. Scarica e salva il certificato esportato. Questo è il valore del tuo certificato client.
    26. Scarica e salva la chiave privata esportata. Questo è il valore della tua chiave privata.
  3. Per ottenere il valore ARN dell'anchora di fiducia, procedere come segue:
    1. Accedi alla tua console di gestione di AWS.
    2. Vai su IAM, quindi seleziona Ruoli dalla barra laterale.
    3. Nella sezione " Roles Anywhere ", clicca su "Gestisci".
    4. Fai clic sul pulsante «Crea un punto di riferimento ».
    5. Nel campo "Nome dell'ancora di fiducia ", inserire un nome per l'ancora di fiducia.
    6. Nella sezione "Autorità di certificazione (CA)", selezionare l'autorità in base alla modalità con cui è stata creata.
      Se hai creato l'autorità di certificazione utilizzando l'autorità di certificazione privata di AWS :
      • Selezionare " AWS " come fonte dell'autorità di certificazione (CA).
      • Nella sezione " Autorità di certificazione privata " di AWS, selezionare l'autorità di certificazione creata al punto 2.i.
      Se hai creato l'autorità di certificazione utilizzando OpenSSL:
      • Selezionare "Bundle di certificati esterni" come origine dell'autorità di certificazione (CA).
      • Nella sezione " Pacchetto certificati esterni ", copia e incolla il contenuto del ca.pem file che hai generato al punto 1.f.
    7. Configurare le impostazioni di notifica come richiesto.
    8. Fai clic sul pulsante «Crea un punto di riferimento ».
      Crea una pagina di riferimento
      Nota: per ulteriori informazioni sulla creazione di un "trust anchor", consultare la pagina della documentazione "Stabilire la fiducia" su AWS.
    9. Nella sezione " Ancoraggi di fiducia ", seleziona l'ancoraggio di fiducia che hai creato.
    10. Copia il valore ARN (si tratta del valore ARN del tuo Trust Anchor) e conservalo in un luogo sicuro.
  4. Per ottenere il valore ARN del ruolo, procedere come segue:
    1. Accedi alla tua console di gestione di AWS.
    2. Vai su IAM, quindi seleziona Ruoli dalla barra laterale.
    3. Selezionare " Crea un nuovo ruolo ", quindi fare clic su "Avanti".

      Viene visualizzata la pagina " Entità attendibili selezionate".

    4. Selezionare "Criteri di affidabilità personalizzati" come tipo di entità attendibile.
    5. Incolla il seguente codice JSON.
      {
        "Version": "2012-10-17",
        "Statement": [
          {
            "Effect": "Allow",
            "Principal": {
              "Service": "rolesanywhere.amazonaws.com"
            },
            "Action": [
              "sts:AssumeRole",
              "sts:TagSession",
              "sts:SetSourceIdentity"
            ]
          }
        ]
      }
      Seleziona la pagina dell'entità di fiducia
    6. Fai clic sul pulsante Avanti.

      Viene visualizzata la pagina "Aggiungi autorizzazioni".

    7. Seleziona i criteri di autorizzazione appropriati da associare al tuo nuovo ruolo.
    8. Fai clic sul pulsante Avanti.

      Viene visualizzata la pagina " Nome, modifica e creazione".

    9. Nel campo "Nome ruolo ", inserisci un nome per il ruolo.
    10. Nel campo Descrizione, inserisci una descrizione del ruolo.
    11. Fai clic sul pulsante «Crea ruolo ».
    12. Nella pagina Ruoli, seleziona il ruolo che hai creato.
    13. Copia il valore ARN (si tratta del valore ARN del tuo ruolo) e conservalo in un luogo sicuro.
  5. Per ottenere il valore ARN del profilo, procedere come segue:
    1. Accedi alla tua console di gestione di AWS.
    2. Vai su IAM, quindi seleziona Ruoli dalla barra laterale.
    3. Nella sezione " Roli ovunque ", clicca sul pulsante "Gestisci".
    4. Clicca sul pulsante «Crea un profilo ».

      Viene visualizzata la pagina "Crea un profilo ".

      Una pagina dedicata alle entità di fiducia selezionate
    5. Nel campo "Nome profilo ", inserisci un nome per il tuo profilo.
    6. Fai clic sul pulsante "Aggiungi un altro ruolo ", quindi seleziona l'ARN del ruolo che hai creato al punto 4.
    7. Facoltativo: aggiungere una policy JSON come policy inline in base alle proprie esigenze.
      Ad esempio, per concedere l'accesso completo all' S3 e con l'identificazione della sessione, copia e incolla la seguente politica JSON.
      {
        "Version": "2012-10-17",
        "Statement": [
          {
            "Effect": "Allow",
            "Action": "s3:*",
            "Resource": "*"
          },
          {
            "Effect": "Allow",
            "Action": [
              "sts:TagSession",
              "sts:SetSourceIdentity"
            ],
            "Resource": "*"
          }
        ]
      }
      Ad esempio, per limitare la politica di sessione a un bucket specifico, copia e incolla la seguente politica JSON.
      {
        "Version": "2012-10-17",
        "Statement": [
          {
            "Effect": "Allow",
            "Action": [
              "s3:ListBucket",
              "s3:GetObject"
            ],
            "Resource": [
              "arn:aws:s3:::your-bucket-name",
              "arn:aws:s3:::your-bucket-name/*"
            ]
          }
        ]
      }
    8. Imposta la durata della sessione come desideri.
    9. Clicca sul pulsante «Crea un profilo ».
    10. Nella sezione Profili, seleziona il profilo che hai creato.
    11. Copia il valore ARN (si tratta del valore ARN del tuo profilo) e conservalo in un luogo sicuro.