Gestisci i segreti delle applicazioni con AWS Secrets Manager - Amazon EKS

Contribuisci a migliorare questa pagina

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Per contribuire a questa guida per l'utente, scegli il GitHub link Modifica questa pagina nel riquadro destro di ogni pagina.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Gestisci i segreti delle applicazioni con AWS Secrets Manager

AWS Secrets Manager ti aiuta a gestire, accedere e ruotare credenziali, chiavi API e altri segreti durante il loro ciclo di vita. Con Secrets Manager, puoi proteggere e gestire i segreti utilizzati per accedere alle risorse in AWS, su servizi di terze parti e in locale. Per ulteriori informazioni, consulta la Guida per l'utente di AWS Secrets Manager.

Quando si utilizza il CD EKS Capability for Argo, Secrets Manager offre un modo sicuro per archiviare e recuperare le credenziali del repository Git senza codificare i dati sensibili nella configurazione e nelle risorse del CD Argo. Questa integrazione è particolarmente utile per gestire i token di accesso ai repository privati e le chiavi SSH utilizzate da Argo CD per sincronizzare le applicazioni dai repository Git.

Usare AWS Secrets Manager con Argo CD

Quando si utilizza il CD EKS Capability for Argo, è possibile memorizzare le credenziali del repository Git in Secrets Manager e configurare Argo CD per recuperarle. Questo approccio è più sicuro rispetto all'archiviazione delle credenziali direttamente nella configurazione di Argo CD o all'utilizzo di token di accesso personali di lunga durata.

Prerequisiti

  • Un cluster Amazon EKS con funzionalità Argo CD abilitata

  • Credenziali del repository Git archiviate in AWS Secrets Manager

  • Autorizzazioni IAM configurate per Argo CD per accedere a Secrets Manager

Per configurare Argo CD per utilizzare Secrets Manager per le credenziali del repository

  1. Memorizza le tue credenziali Git in Secrets Manager. Ad esempio, per memorizzare un token di accesso GitHub personale:

    aws secretsmanager create-secret \ --name argocd/github-token \ --secret-string '{"username":"git","password":"ghp_xxxxxxxxxxxx"}'
  2. Assicurati che il ruolo di funzionalità di Argo CD disponga delle autorizzazioni per recuperare il segreto:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret" ], "Resource": "arn:aws:secretsmanager:region:account-id:secret:argocd/github-token*" }, { "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": "arn:aws:kms:region:account-id:key/*", "Condition": { "StringLike": { "kms:EncryptionContext:SecretARN": "arn:aws:secretsmanager:region:account-id:secret:argocd/*", "kms:ViaService": "secretsmanager.*.amazonaws.com" } } } ] }
    Nota

    L'autorizzazione di decrittografia KMS è richiesta perché Secrets Manager crittografa tutti i segreti utilizzando KMS. AWS La condizione limita la decrittografia ai soli segreti con il prefisso. argocd/ Se si utilizza la chiave AWS gestita predefinita per Secrets Manager, questa autorizzazione è sufficiente. Per le chiavi KMS gestite dal cliente, aggiorna il Resource campo con la chiave ARN specifica.

  3. Configura Argo CD per utilizzare le credenziali di Secrets Manager. Per informazioni sulla sincronizzazione dei segreti da Secrets Manager con i segreti di Kubernetes a cui Argo CD può fare riferimento, consulta Secret Management nella documentazione di Argo CD.

  4. Crea una configurazione del repository Argo CD che faccia riferimento all'ARN segreto:

    apiVersion: v1 kind: Secret metadata: name: private-repo namespace: argocd labels: argocd.argoproj.io/secret-type: repository stringData: type: git url: https://github.com/org/repo secretArn: arn:aws:secretsmanager:region:account-id:secret:argocd/github-token

Per ulteriori informazioni sulla configurazione dell'accesso al repository con Argo CD, vedere. Configurare l'accesso al repository