

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 網域概觀
<a name="domain-overview"></a>

當您使用 CodeArtifact 時，網域對下列項目很有用：
+  **重複資料刪除的儲存**：資產只需要儲存在網域中一次，即使可在 1 或 1，000 個儲存庫中使用。這表示您只需支付一次儲存費用。
+  **快速複製**：當您將套件從上游 CodeArtifact 儲存庫提取到下游或使用 [CopyPackageVersions API](copy-package.md) 時，只需要更新中繼資料記錄。不會複製任何資產。這可讓您快速設定新儲存庫以進行預備或測試。如需詳細資訊，請參閱[在 CodeArtifact 中使用上游儲存庫](repos-upstream.md)。
+  **跨儲存庫和團隊輕鬆共用**：網域中的所有資產和中繼資料都會使用單一 AWS KMS key (KMS 金鑰） 加密。您不需要管理每個儲存庫的金鑰，或授予多個帳戶存取單一金鑰的權限。
+  **將政策套用至多個儲存庫**：網域管理員可以將政策套用至整個網域。這包括限制哪些帳戶可以存取網域中的儲存庫，以及誰可以設定與公有儲存庫的連線，以用作套件的來源。如需詳細資訊，請參閱[網域政策](domain-policies.md)。
+  **唯一儲存庫名稱**：網域提供儲存庫的命名空間。儲存庫名稱在網域中只需要是唯一的。您應該使用易於理解的有意義的名稱。

網域名稱在 帳戶中必須是唯一的。

您無法在沒有網域的情況下建立儲存庫。當您使用 [CreateRepository](create-repo.md) API 建立儲存庫時，您必須指定網域名稱。您無法將儲存庫從一個網域移至另一個網域。

儲存庫可以由擁有網域的相同 AWS 帳戶或不同的帳戶所擁有。如果擁有的帳戶不同，則必須將網域資源的`CreateRepository`許可授予擁有儲存庫的帳戶。您可以使用 [PutDomainPermissionsPolicy](domain-policies.md#set-domain-policy) 命令將資源政策新增至網域來執行此操作。

雖然組織可以有多個網域，但建議有一個包含所有已發佈成品的單一生產網域，以便開發團隊可以在其組織中尋找和共用套件。第二個生產前網域可用於測試生產網域組態的變更。

## 跨帳戶網域
<a name="domain-overview-cross-account"></a>

網域名稱在帳戶中只需要是唯一的，這表示區域中可能有多個網域名稱具有相同的名稱。因此，如果您想要存取未經身分驗證之帳戶所擁有的網域，則必須在 CLI 和主控台中提供網域擁有者 ID 以及網域名稱。請參閱下列 CLI 範例。

**存取您經過身分驗證的帳戶所擁有的網域：**

存取您經過身分驗證的帳戶內的網域時，您只需要指定網域名稱。下列範例列出您帳戶所擁有 {{my\_domain 網域中 my\_repo}} 儲存庫中的套件。 {{}}

```
aws codeartifact list-packages --domain {{my_domain}} --repository {{my_repo}}
```

**存取您未驗證之帳戶擁有的網域：**

存取您未驗證之帳戶所擁有的網域時，您需要指定網域擁有者以及網域名稱。下列範例會列出其他{{網域}}網域中其他{{儲存庫}}儲存庫中的套件，該網域是由您未進行身分驗證的帳戶所擁有。請注意新增 `--domain-owner` 參數。

```
aws codeartifact list-packages --domain {{other-domain}} --domain-owner {{111122223333}} --repository {{other-repo}}
```

## CodeArtifact 支援的 AWS KMS 金鑰類型
<a name="domain-overview-supported-kms-keys"></a>

CodeArtifact 僅支援[對稱 KMS 金鑰](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#symmetric-cmks)。您無法使用[非對稱 KMS 金鑰](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html#asymmetric-cmks)來加密 CodeArtifact 網域。如需詳細資訊，請參閱[識別對稱和非對稱 KMS 金鑰](https://docs.aws.amazon.com/kms/latest/developerguide/find-symm-asymm.html)。若要了解如何建立新的客戶受管金鑰，請參閱《 *AWS Key Management Service 開發人員指南*》中的[建立對稱加密 KMS 金鑰](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk)。

CodeArtifact 支援 AWS KMS 外部金鑰存放區 (XKS)。您必須負責 XKS 金鑰之金鑰操作的可用性、耐久性和延遲，這可能會影響 CodeArtifact 的可用性、耐久性和延遲。搭配 CodeArtifact 使用 XKS 金鑰的一些效果範例：
+ 由於所請求套件及其所有相依性的每個資產都受到解密延遲的影響，因此建置延遲可能會隨著 XKS 操作延遲的增加而大幅增加。
+ 由於所有資產都在 CodeArtifact 中加密，因此遺失 XKS 金鑰資料會導致遺失使用 XKS 金鑰與網域相關聯的所有資產。

如需 XKS 金鑰的詳細資訊，請參閱《 *AWS Key Management Service 開發人員指南*》中的[外部金鑰存放](https://docs.aws.amazon.com/kms/latest/developerguide/keystore-external.html)區。