UiPath Documentation
automation-suite
2.2510
true
Guide d'installation d'Automation Suite sur EKS/AKS
Important :
Veuillez noter que ce contenu a été localisé en partie à l’aide de la traduction automatique. La localisation du contenu nouvellement publié peut prendre 1 à 2 semaines avant d’être disponible.

Configuration d'AWS Secrets Manager en tant que magasin de clés secrètes

Configurez AWS Secrets Manager en tant que magasin de secrets à l'aide du rôle Node IAM ou des clés d'accès sur EKS/AKS.

Vous pouvez configurer AWS Secrets Manager en tant que magasin secret à l'aide de l'une des méthodes d'authentification suivantes :

  • Rôle IAM de nœud : utilise le rôle IAM attaché à l'instance EC2 où le pod ESO s'exécute.
  • Clés d’accès statiques)

AWS Secrets Manager stocke les clés secrètes sous forme de paires clé-valeur ou de chaînes de texte brut.

Par défaut, toutes les données sensibles sont définies dans input.json. Vous pouvez séparer ces données en deux parties :

  • input.json : contient uniquement les données de configuration.
  • AWS Secrets Manager : stocke les informations d'identification en toute sécurité.
Remarque :

Vous ne pouvez pas stocker les chemins de certificat ou les informations d'identification liées au certificat dans le magasin secret.

Utiliser un rôle IAM de nœud​

Le pod hérite des autorisations du profil d'instance du nœud via la chaîne d'informations d'identification AWS par défaut. Aucun secret Kubernetes ni configuration supplémentaire n’est nécessaire.

Prérequis​

  • Rôle IAM rattaché au nœud EKS/EC2 avec les autorisations secretsmanager:GetSecretValue et secretsmanager:ListSecrets
  • Rôle IAM attribué au profil d'instance des nœuds exécutant le pod ESO

Configuring input.json​

Pour configurer AWS Secrets Manager en tant que magasin secret à l'aide du rôle Nœud IAM, ajoutez la section suivante à input.json:

{
  "secret_store": {
    "enabled": true,
    "provider_configs": [
      {
        "name": "aws-prod",
        "type": "aws",
        "aws_kv": {
          "region": "us-east-1"
        }
      }
    ]
  }
}
{
  "secret_store": {
    "enabled": true,
    "provider_configs": [
      {
        "name": "aws-prod",
        "type": "aws",
        "aws_kv": {
          "region": "us-east-1"
        }
      }
    ]
  }
}

Configuration de la stratégie IAM requise​

  1. Créez la stratégie IAM à l’aide de la définition suivante :

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": ["secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret"],
          "Resource": "arn:aws:secretsmanager:<region>:<account-id>:secret:*"
        },
        {
          "Effect": "Allow",
          "Action": ["secretsmanager:ListSecrets"],
          "Resource": "*"
        }
      ]
    }
    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": ["secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret"],
          "Resource": "arn:aws:secretsmanager:<region>:<account-id>:secret:*"
        },
        {
          "Effect": "Allow",
          "Action": ["secretsmanager:ListSecrets"],
          "Resource": "*"
        }
      ]
    }
    
  2. Exécutez la commande suivante pour créer la politique :

    aws iam create-policy \
        --policy-name ESOSecretsManagerPolicy \
        --policy-document file://secrets-manager-policy.json
    aws iam create-policy \
        --policy-name ESOSecretsManagerPolicy \
        --policy-document file://secrets-manager-policy.json
    
  3. Attachez la stratégie au rôle IAM associé au profil d’instance de nœud :

    aws iam attach-role-policy \
        --role-name <your-role-attached-to-node> \
        --policy-arn arn:aws:iam::<your-account-id>:policy/ESOSecretsManagerPolicy
    aws iam attach-role-policy \
        --role-name <your-role-attached-to-node> \
        --policy-arn arn:aws:iam::<your-account-id>:policy/ESOSecretsManagerPolicy
    

Utilisation de clés d'accès​

Les clés d’accès utilisent l’ID de clé d’accès AWS explicite et la clé d’accès secrète stockées dans une clé secrète Kubernetes. Cette méthode est adaptée aux environnements hors EKS ou lorsque les rôles IAM de nœud ne sont pas disponibles.

Prérequis​

  • Utilisateur AWS IAM avec des autorisations secretsmanager:GetSecretValue
  • Clé secrète Kubernetes pré-créée avec les informations d’identification de la clé d’accès

Configuring input.json​

Pour configurer AWS Secrets Manager en tant que magasin secret à l'aide de Clés d'accès, procédez comme suit :

  1. Créez la clé secrète Kubernetes qui stocke les informations d’identification AWS :

    kubectl create secret generic aws-credentials \
      --namespace uipath \
      --from-literal=access-key-id=<your-access-key-id> \
      --from-literal=secret-access-key=<your-secret-access-key>
    kubectl create secret generic aws-credentials \
      --namespace uipath \
      --from-literal=access-key-id=<your-access-key-id> \
      --from-literal=secret-access-key=<your-secret-access-key>
    

    Le secret doit contenir les clés suivantes :

    • access-key-id – ID de clé d'accès AWS
    • secret-access-key - Clé d'accès secrète AWS
  2. Ajoutez la section suivante à input.json:

    {
      "secret_store": {
        "enabled": true,
        "provider_configs": [
          {
            "name": "aws-prod",
            "type": "aws",
            "credentials_secret_name": "aws-credentials",
            "aws_kv": {
              "region": "us-east-1"
            }
          }
        ]
      }
    }
    {
      "secret_store": {
        "enabled": true,
        "provider_configs": [
          {
            "name": "aws-prod",
            "type": "aws",
            "credentials_secret_name": "aws-credentials",
            "aws_kv": {
              "region": "us-east-1"
            }
          }
        ]
      }
    }
    

Champs de configuration​

Le tableau suivant décrit les champs de configuration disponibles.

ChampRequisDescription
aws_kv.regionOui (Yes)Région AWS où les clés secrètes sont stockées (par exemple, us-east-1)
credentials_secret_nameNon (No)Clé secrète Kubernetes contenant les informations d’identification de la clé d’accès. S’il n’est pas défini, le rôle IAM de nœud est utilisé.

Référencement des clés secrètes dans input.json​

Pour référencer des informations d'identification stockées dans AWS Secrets Manager, utilisez l'un des formats suivants dans input.json:

  • Chaîne simple : vault/aws-prod/secret-name
  • Extraction de la propriété JSON : vault/aws-prod/secret-name?key=password

Utilisation d'AWS GovCloud​

Si vous utilisez AWS GovCloud, définissez le champ region sur une région AWS GovCloud (par exemple, us-gov-west-1 ou us-gov-east-1). Aucun autre changement de configuration n'est requis : la valeur de la région détermine la partition AWS et les points de terminaison utilisés.

{
  "secret_store": {
    "enabled": true,
    "provider_configs": [
      {
        "name": "aws-gov",
        "type": "aws",
        "credentials_secret_name": "aws-credentials",
        "aws_kv": {
          "region": "us-gov-west-1"
        }
      }
    ]
  }
}
{
  "secret_store": {
    "enabled": true,
    "provider_configs": [
      {
        "name": "aws-gov",
        "type": "aws",
        "credentials_secret_name": "aws-credentials",
        "aws_kv": {
          "region": "us-gov-west-1"
        }
      }
    ]
  }
}

Cette page vous a-t-elle été utile ?

Connecter

Besoin d'aide ? Assistance

Vous souhaitez apprendre ? UiPath Academy

Vous avez des questions ? UiPath Forum

Rester à jour