Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Présentation des domaines
Lorsque vous travaillez avec CodeArtifact, les domaines sont utiles pour les raisons suivantes :
-
Stockage dédupliqué : un actif ne doit être stocké qu'une seule fois dans un domaine, même s'il est disponible dans 1 ou 1 000 référentiels. Cela signifie que vous ne payez qu'une seule fois pour le stockage.
-
Copie rapide : lorsque vous extrayez des packages d'un CodeArtifact référentiel en amont vers un référentiel en aval ou que vous utilisez l'CopyPackageVersions API, seuls les enregistrements de métadonnées doivent être mis à jour. Aucun actif n'est copié. Cela permet de configurer rapidement un nouveau référentiel à des fins de préparation ou de test. Pour de plus amples informations, veuillez consulter Utilisation de référentiels en amont dans CodeArtifact.
-
Partage facile entre les référentiels et les équipes : tous les actifs et les métadonnées d'un domaine sont chiffrés avec une seule clé AWS KMS key (clé KMS). Vous n'avez pas besoin de gérer une clé pour chaque référentiel ni d'autoriser plusieurs comptes à accéder à une seule clé.
-
Appliquer une politique à plusieurs référentiels : L'administrateur du domaine peut appliquer une politique à l'ensemble du domaine. Cela inclut la restriction des comptes qui ont accès aux référentiels du domaine et des personnes qui peuvent configurer les connexions aux référentiels publics à utiliser comme sources de packages. Pour plus d'informations, consultez la section Politiques de domaine.
-
Noms de référentiels uniques : le domaine fournit un espace de noms pour les référentiels. Les noms des référentiels doivent uniquement être uniques au sein du domaine. Vous devez utiliser des noms significatifs et faciles à comprendre.
Les noms de domaine doivent être uniques au sein d'un compte.
Vous ne pouvez pas créer de référentiel sans domaine. Lorsque vous utilisez l'CreateRepositoryAPI pour créer un référentiel, vous devez spécifier un nom de domaine. Vous ne pouvez pas déplacer un référentiel d'un domaine à un autre.
Un référentiel peut appartenir au même AWS compte que le domaine, ou à un compte différent. Si les comptes propriétaires sont différents, le compte propriétaire du référentiel doit disposer de l'CreateRepositoryautorisation sur la ressource de domaine. Vous pouvez le faire en ajoutant une politique de ressources au domaine à l'aide de la PutDomainPermissionsPolicy commande.
Bien qu'une organisation puisse avoir plusieurs domaines, il est recommandé de disposer d'un domaine de production unique contenant tous les artefacts publiés afin que les équipes de développement puissent trouver et partager des packages au sein de leur organisation. Un second domaine de pré-production peut être utile pour tester les modifications apportées à la configuration du domaine de production.
Cross-account domaines
Les noms de domaine doivent uniquement être uniques au sein d'un compte, ce qui signifie que plusieurs domaines peuvent porter le même nom au sein d'une même région. Pour cette raison, si vous souhaitez accéder à un domaine appartenant à un compte pour lequel vous n'êtes pas authentifié, vous devez fournir l'ID du propriétaire du domaine ainsi que le nom de domaine dans l'interface de ligne de commande et dans la console. Consultez les exemples de CLI suivants.
Accédez à un domaine appartenant à un compte pour lequel vous êtes authentifié :
Lorsque vous accédez à un domaine depuis le compte auprès duquel vous êtes authentifié, il vous suffit de spécifier le nom de domaine. L'exemple suivant répertorie les packages du my_repo référentiel du my_domain domaine appartenant à votre compte.
aws codeartifact list-packages --domainmy_domain--repositorymy_repo
Accédez à un domaine appartenant à un compte pour lequel vous n'êtes pas authentifié :
Lorsque vous accédez à un domaine appartenant à un compte pour lequel vous n'êtes pas authentifié, vous devez spécifier le propriétaire du domaine ainsi que le nom de domaine. L'exemple suivant répertorie les packages du other-repo référentiel du other-domain domaine qui appartient à un compte pour lequel vous n'êtes pas authentifié. Notez l'ajout du --domain-owner paramètre.
aws codeartifact list-packages --domainother-domain--domain-owner111122223333--repositoryother-repo
Types de AWS KMS touches prises en charge dans CodeArtifact
CodeArtifact prend uniquement en charge les clés KMS symétriques. Vous ne pouvez pas utiliser de clé KMS asymétrique pour chiffrer vos CodeArtifact domaines. Pour plus d'informations, consultez la section Identification des clés KMS symétriques et asymétriques. Pour savoir comment créer une nouvelle clé gérée par le client, consultez la section Création de clés KMS à chiffrement symétrique dans le Guide du AWS Key Management Service développeur.
CodeArtifact prend en charge les magasins de clés AWS KMS externes (XKS). Vous êtes responsable de la disponibilité, de la durabilité et de la latence des opérations clés avec les clés XKS, ce qui peut affecter la disponibilité, la durabilité et la latence. CodeArtifact Voici quelques exemples d'effets liés à l'utilisation des touches XKS avec CodeArtifact :
Étant donné que chaque actif d'un package demandé et toutes ses dépendances sont soumis à une latence de déchiffrement, la latence de génération peut être considérablement augmentée avec une augmentation de la latence de fonctionnement XKS.
Étant donné que tous les actifs sont cryptés CodeArtifact, la perte de matériel clé XKS entraînera la perte de tous les actifs associés au domaine utilisant la clé XKS.
Pour plus d'informations sur les clés XKS, consultez la section Magasins de clés externes dans le Guide du AWS Key Management Service développeur.