本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立網域
您可以使用 CodeArtifact 主控台、 AWS Command Line Interface (AWS CLI) 或 建立網域 AWS CloudFormation。當您建立網域時,它不包含任何儲存庫。如需詳細資訊,請參閱建立 儲存庫。如需使用 CodeArtifact 管理 CloudFormation 網域的詳細資訊,請參閱 建立 CodeArtifact 資源 AWS CloudFormation。
建立網域 (主控台)
-
在 AWS CodeArtifact codeartifact/home 開啟 https://console.aws.amazon.com/codesuite/
主控台。 -
在導覽窗格中,選擇網域,然後選擇建立網域。
-
在名稱中,輸入網域的名稱。
-
展開 Additional configuration (其他組態)。
-
使用 AWS KMS key (KMS 金鑰) 加密網域中的所有資產。您可以使用 AWS 受管 KMS 金鑰或您管理的 KMS 金鑰。如需支援之 KMS 金鑰類型的詳細資訊 CodeArtifact,請參閱 in CodeArtifact 支援的 AWS KMS 金鑰類型。
-
如果您想要使用預設 ,請選擇 AWS 受管金鑰 AWS 受管金鑰。
-
如果您想要使用您管理的 KMS 金鑰,請選擇客戶受管金鑰。若要使用您管理的 KMS 金鑰,請在客戶受管金鑰 ARN 中搜尋並選擇 KMS 金鑰。
如需詳細資訊,請參閱 AWS Key Management Service 開發人員指南中的 AWS 受管金鑰和 客戶受管金鑰。
-
-
選擇建立網域。
建立網域 (AWS CLI)
若要使用 建立網域 AWS CLI,請使用 create-domain
命令。您必須使用 AWS KMS key (KMS 金鑰) 加密網域中的所有資產。您可以使用 AWS 受管 KMS 金鑰或您管理的 KMS 金鑰。如果您使用 AWS 受管 KMS 金鑰,請勿使用 --encryption-key
參數。
如需支援之 KMS 金鑰類型的詳細資訊 CodeArtifact,請參閱 in CodeArtifact 支援的 AWS KMS 金鑰類型。如需 KMS 金鑰的詳細資訊,請參閱 AWS Key Management Service 開發人員指南中的 AWS 受管金鑰和 客戶受管金鑰。
aws codeartifact create-domain --domain
my_domain
JSON 格式資料會顯示在輸出中,其中包含新網域的詳細資訊。
{ "domain": { "name": "
my_domain
", "owner": "111122223333
", "arn": "arn:aws:codeartifact:us-west-2
:111122223333
:domain/my_domain
", "status": "Active", "encryptionKey": "arn:aws:kms:us-west-2
:111122223333
:key/your-kms-key
", "repositoryCount": 0, "assetSizeBytes": 0, "createdTime": "2020-10-12T16:51:18.039000-04:00" } }
如果您使用管理的 KMS 金鑰,請在 --encryption-key
參數中包含其 Amazon Resource Name (ARN)。
aws codeartifact create-domain --domain
my_domain
--encryption-keyarn:aws:kms:us-west-2:111122223333:key/your-kms-key
JSON 格式資料會顯示在輸出中,其中包含新網域的詳細資訊。
{ "domain": { "name": "
my_domain
", "owner": "111122223333
", "arn": "arn:aws:codeartifact:us-west-2
:111122223333
:domain/my_domain
", "status": "Active", "encryptionKey": "arn:aws:kms:us-west-2
:111122223333
:key/your-kms-key
", "repositoryCount": 0, "assetSizeBytes": 0, "createdTime": "2020-10-12T16:51:18.039000-04:00" } }
使用標籤建立網域
若要使用標籤建立網域,請將 --tags
參數新增至您的create-domain
命令。
aws codeartifact create-domain --domain
my_domain
--tagskey=k1,value=v1 key=k2,value=v2
AWS KMS 範例金鑰政策
當您建立網域 in CodeArtifact 時,您可以使用 KMS 金鑰來加密網域中的所有資產。您可以選擇受 AWS 管 KMS 金鑰,或由您管理的客戶受管金鑰。如需 KMS 金鑰的詳細資訊,請參閱 AWS Key Management Service 開發人員指南。
若要使用客戶受管金鑰,您的 KMS 金鑰必須具有授予 CodeArtifact 存取權的金鑰政策。金鑰政策是 AWS KMS 金鑰的資源政策,也是控制 KMS 金鑰存取的主要方式。每個 KMS 金鑰必須只有一個金鑰政策。金鑰政策中的陳述式會決定誰有權使用 KMS 金鑰,以及他們可以如何使用它。
下列金鑰政策陳述式範例允許 AWS CodeArtifact 代表授權使用者建立授予和檢視金鑰詳細資訊。此政策陳述式使用 kms:ViaService
和 kms:CallerAccount
條件索引鍵,限制代表指定帳戶 ID 的 to CodeArtifact 許可。它也會將所有 AWS KMS 許可授予 IAM 根使用者,以便在建立金鑰後對其進行管理。
{ "Version": "2012-10-17", "Id": "key-consolepolicy-3", "Statement": [ { "Sid": "Allow access through AWS CodeArtifact for all principals in the account that are authorized to use CodeArtifact", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "kms:CreateGrant", "kms:DescribeKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:CallerAccount": "111122223333", "kms:ViaService": "codeartifact.us-west-2.amazonaws.com" } } }, { "Sid": "Enable IAM User Permissions", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": "kms:*", "Resource": "*" } ] }