本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
將稽核報告與您的私有 CA 搭配使用
您可以建立稽核報告,以列出私有 CA 已發行或撤銷的所有憑證。報告會儲存在新的或輸入時指定的現有 S3 儲存貯體。
如需為您稽核報告新增加密保護的資訊,請參閱 加密您的稽核報告 。
稽核報告檔案具有以下路徑和檔案名稱。Amazon S3 存儲桶的 ARN 是的價值。bucket-name
CA_ID
是發行 CA 的唯一識別碼。 UUID
是稽核報告的唯一識別碼。
bucket-name
/audit-report/CA_ID
/UUID
.[json|csv]
每 30 分鐘可從您的儲存貯體產生及下載新的報告。以下範例顯示以 CSV 分隔的報告。
awsAccountId,requestedByServicePrincipal,certificateArn,serial,subject,notBefore,notAfter,issuedAt,revokedAt,revocationReason,templateArn
123456789012,,arn:aws:acm-pca:region
:account
:certificate-authority/CA_ID
/certificate/certificate_ID
,00:11:22:33:44:55:66:77:88:99:aa:bb:cc:dd:ee:ff,"2.5.4.5=#012345678901,2.5.4.44=#0a1b3c4d,2.5.4.65=#0a1b3c4e5f6a,2.5.4.43=#0a1b3c4d5e,2.5.4.42=#0123456789abcdef0123456789abcdef0123,2.5.4.4=#0123456789abcdef01234567,2.5.4.12=#0a1b3c4d5e,2.5.4.46=#0123456789ab,CN=www.example1.com,OU=Sales,O=Example Company,L=Seattle,ST=Washington,C=US",2020-03-02T21:43:57+0000,2020-04-07T22:43:57+0000,2020-03-02T22:43:58+0000,,UNSPECIFIED,arn:aws:acm-pca:::template/EndEntityCertificate/V1
123456789012,acm.amazonaws.com,arn:aws:acm-pca:region
:account
:certificate-authority/CA_ID
/certificate/certificate_ID
,ff:ee:dd:cc:bb:aa:99:88:77:66:55:44:33:22:11:00,"2.5.4.5=#012345678901,2.5.4.44=#0a1b3c4d,2.5.4.65=#0a1b3c4d5e6f,2.5.4.43=#0a1b3c4d5e,2.5.4.42=#0123456789abcdef0123456789abcdef0123,2.5.4.4=#0123456789abcdef01234567,2.5.4.12=#0a1b3c4d5e,2.5.4.46=#0123456789ab,CN=www.example1.com,OU=Sales,O=Example Company,L=Seattle,ST=Washington,C=US",2020-03-02T20:53:39+0000,2020-04-07T21:53:39+0000,2020-03-02T21:53:40+0000,,,arn:aws:acm-pca:::template/EndEntityCertificate/V1
JSON 格式的報告如下列範例所示。
[
{
"awsAccountId":"123456789012",
"certificateArn":"arn:aws:acm-pca:region
:account
:certificate-authority/CA_ID
/certificate/certificate_ID
",
"serial":"00:11:22:33:44:55:66:77:88:99:aa:bb:cc:dd:ee:ff",
"subject":"2.5.4.5=#012345678901,2.5.4.44=#0a1b3c4d,2.5.4.65=#0a1b3c4d5e6f,2.5.4.43=#0a1b3c4d5e,2.5.4.42=#0123456789abcdef0123456789abcdef0123,2.5.4.4=#0123456789abcdef01234567,2.5.4.12=#0a1b3c4d5e,2.5.4.46=#0123456789ab,CN=www.example1.com,OU=Sales,O=Example Company,L=Seattle,ST=Washington,C=US",
"notBefore":"2020-02-26T18:39:57+0000",
"notAfter":"2021-02-26T19:39:57+0000",
"issuedAt":"2020-02-26T19:39:58+0000",
"revokedAt":"2020-02-26T20:00:36+0000",
"revocationReason":"UNSPECIFIED",
"templateArn":"arn:aws:acm-pca:::template/EndEntityCertificate/V1"
},
{
"awsAccountId":"123456789012",
"requestedByServicePrincipal":"acm.amazonaws.com",
"certificateArn":"arn:aws:acm-pca:region
:account
:certificate-authority/CA_ID
/certificate/certificate_ID
",
"serial":"ff:ee:dd:cc:bb:aa:99:88:77:66:55:44:33:22:11:00",
"subject":"2.5.4.5=#012345678901,2.5.4.44=#0a1b3c4d,2.5.4.65=#0a1b3c4d5e6f,2.5.4.43=#0a1b3c4d5e,2.5.4.42=#0123456789abcdef0123456789abcdef0123,2.5.4.4=#0123456789abcdef01234567,2.5.4.12=#0a1b3c4d5e,2.5.4.46=#0123456789ab,CN=www.example1.com,OU=Sales,O=Example Company,L=Seattle,ST=Washington,C=US",
"notBefore":"2020-01-22T20:10:49+0000",
"notAfter":"2021-01-17T21:10:49+0000",
"issuedAt":"2020-01-22T21:10:49+0000",
"templateArn":"arn:aws:acm-pca:::template/EndEntityCertificate/V1"
}
]
注意
更 AWS Certificate Manager 新憑證時,私有 CA 稽核報告會填入requestedByServicePrincipal
欄位。acm.amazonaws.com
這表示 AWS Certificate Manager 服務代表客戶呼叫 AWS 私有 CA API 的IssueCertificate
動作,以更新憑證。
準備用於稽核報告的 Amazon S3 儲存貯體
若要存放稽核報告,您需要準備 Amazon S3 儲存貯體。如需詳細資訊,請參閱如何建立 S3 儲存貯體?
您的 S3 儲存貯體必須由連接的許可政策保護。授權的使用者和服務主體需 AWS 私有 CA 要Put
允許將物件放置在值區中的權Get
限,以及擷取物件的權限。我們建議您套用下面顯示的政策,這會限制對私有 CA 的 AWS 帳戶和 ARN 的存取。如需詳細資訊,請參閱使用 Amazon S3 主控台新增儲存貯體政策。
注意
在建立稽核報告的主控台程序期間,您可以選擇允許 AWS 私有 CA 建立新值區並套用預設權限原則。預設原則不會對 CA 套用任何SourceArn
限制,因此比建議的原則更寬鬆。如果您選擇預設值,稍後可以隨時修改它。
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "Service":"acm-pca.amazonaws.com" }, "Action":[ "s3:PutObject", "s3:PutObjectAcl", "s3:GetBucketAcl", "s3:GetBucketLocation" ], "Resource":[ "arn:aws:s3:::
DOC-EXAMPLE-BUCKET
/*", "arn:aws:s3:::DOC-EXAMPLE-BUCKET
" ], "Condition":{ "StringEquals":{ "aws:SourceAccount":"account
", "aws:SourceArn":"arn:partition
:acm-pca:region
:account
:certificate-authority/CA_ID
" } } } ] }
建立稽核報告
您可以從主控台或建立稽核報告 AWS CLI。
建立稽核報告 (主控台)
-
登入您的 AWS 帳戶,然後在 https://console.aws.amazon.com/acm-pca/home
開啟 AWS 私有 CA 主控台。 -
在 [私人憑證授權] 頁面上,從清單中選擇您的私有 CA。
-
從 Actions (動作) 選單中,選擇 Generate audit report (產生稽核報告)。
-
在稽核報告目標下,建立新的 S3 儲存貯體? ,選擇「是」 並輸入唯一的值區名稱,或選擇「否」,然後從清單中選擇現有的時段。
如果您選擇「是」,則 AWS 私有 CA 會建立預設政策並將其附加至值區。如果您選擇「否」,則必須在儲存貯體中附加策略,然後才能產生稽核報告。使用中所述的策略模式準備用於稽核報告的 Amazon S3 儲存貯體。如需附加政策的相關資訊,請參閱使用 Amazon S3 主控台新增儲存貯體政策
-
在 [輸出格式] 下,選擇 [JSON] 做為 [ JavaScript 物件標記法] 或 [CSV] 做為逗號分隔
-
選擇 Generate audit report (產生稽核報告)。
建立稽核報告 (AWS CLI)
-
如果您還沒有要使用的 S3 儲存貯體,請建立一個。
-
將政策附加到您的值區。使用中所述的策略模式準備用於稽核報告的 Amazon S3 儲存貯體。如需附加政策的相關資訊,請參閱使用 Amazon S3 主控台新增儲存貯體政策
-
使用 create-certificate-authority-audit-report 命令建立稽核報告,並將其放置在準備好的 S3 儲存貯體中。
$
aws acm-pca create-certificate-authority-audit-report \ --certificate-authority-arn arn:
aws
:acm-pca:us-east-1
:111122223333
:certificate-authority/11223344-1234-1122-2233-112233445566
\ --s3-bucket-namebucket_name
\ --audit-report-response-format JSON
擷取稽核報告
若要擷取稽核報告以進行檢查,請使用 Amazon S3 主控台、API、CLI 或開發套件。如需詳細資訊,請參閱 Amazon 簡單儲存服務使用者指南中的下載物件。
加密您的稽核報告
您可以選擇在包含稽核報告的 Amazon S3 儲存貯體上設定加密。 AWS 私有 CA 支援 S3 中資產的兩種加密模式:
-
使用亞馬遜 S3 代管的 AES-256 金鑰進行自動伺服器端加密。
-
客戶管理的加密使用 AWS Key Management Service 和 AWS KMS key 配置您的規格。
注意
AWS 私有 CA 不支援使用 S3 自動產生的預設 KMS 金鑰。
下列程序說明如何設定每個加密選項。
設定自動加密
完成以下步驟以啟用 S3 伺服器端加密。
前往 https://console.aws.amazon.com/s3/
開啟的 Amazon Simple Storage Service (Amazon S3) 主控台。 -
在「時段」表格中,選擇要保留 AWS 私有 CA 資產的值區。
-
在您的儲存貯體頁面上,選擇屬性索引標籤。
-
選擇預設加密卡片。
-
選擇 啟用 。
-
選擇 Amazon S3 密鑰(SSE-S3)。
-
選擇 Save Changes (儲存變更)。
設定自訂加密
完成下列步驟以啟用使用自訂金鑰加密。
前往 https://console.aws.amazon.com/s3/
開啟的 Amazon Simple Storage Service (Amazon S3) 主控台。 -
在「時段」表格中,選擇要保留 AWS 私有 CA 資產的值區。
-
在您的儲存貯體頁面上,選擇屬性索引標籤。
-
選擇預設加密卡片。
-
選擇 啟用 。
-
選擇金AWS Key Management Service 鑰 (SSE-KMS)。
-
選擇「從您的 AWS KMS 金鑰中選擇」或「輸入 AWS KMS key ARN」。
-
選擇 Save Changes (儲存變更)。
-
(選擇性) 如果您尚未擁有 KMS 金鑰,請使用下列建立金鑰指令建立一個 KMS AWS CLI 金鑰:
$
aws kms create-key
輸出包含 KMS 金鑰的金鑰識別碼和 Amazon 資源名稱 (ARN)。下面是一個示例輸出:
{ "KeyMetadata": { "KeyId": "01234567-89ab-cdef-0123-456789abcdef", "Description": "", "Enabled": true, "KeyUsage": "ENCRYPT_DECRYPT", "KeyState": "Enabled", "CreationDate": 1478910250.94, "Arn": "arn:aws:kms:us-west-2:123456789012:key/01234567-89ab-cdef-0123-456789abcdef", "AWSAccountId": "123456789012" } }
-
使用下列步驟,您可以授與 AWS 私有 CA 服務主體使用 KMS 金鑰的權限。根據預設,所有 KMS 金鑰都是私密的;只有資源擁有者可以使用 KMS 金鑰來加密和解密資料。然而,資源擁有者可以授與其他使用者和資源存取 KMS 金鑰的許可。服務主體必須與存放 KMS 金鑰所在的區域相同。
-
首先,使
policy.json
用下列get-key-policy命令將 KMS 金鑰的預設原則儲存為:$
aws kms get-key-policy --key-id
key-id
--policy-name default --output text > ./policy.json -
在文字編輯器中開啟
policy.json
檔案。選取下列其中一個原則陳述式,然後將其新增至現有的策略。如果您的 Amazon S3 儲存貯體金鑰已啟用,請使用下列陳述式:
{ "Sid":"Allow ACM-PCA use of the key", "Effect":"Allow", "Principal":{ "Service":"acm-pca.amazonaws.com" }, "Action":[ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource":"*", "Condition":{ "StringLike":{ "kms:EncryptionContext:aws:s3:arn":"arn:aws:s3:::
bucket-name
" } } }如果您的 Amazon S3 儲存貯體金鑰已停用,請使用下列陳述式:
{ "Sid":"Allow ACM-PCA use of the key", "Effect":"Allow", "Principal":{ "Service":"acm-pca.amazonaws.com" }, "Action":[ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource":"*", "Condition":{ "StringLike":{ "kms:EncryptionContext:aws:s3:arn":[ "arn:aws:s3:::
bucket-name
/acm-pca-permission-test-key", "arn:aws:s3:::bucket-name
/acm-pca-permission-test-key-private", "arn:aws:s3:::bucket-name
/audit-report/*", "arn:aws:s3:::bucket-name
/crl/*" ] } } } -
最後,使用下列put-key-policy命令套用更新的原則:
$
aws kms put-key-policy --key-id
key_id
--policy-name default --policy file://policy.json
-