設定 CRL的 AWS Private CA - AWS Private Certificate Authority

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

設定 CRL的 AWS Private CA

在 CA 建立程序 中設定憑證撤銷清單 (CRL) 之前,可能需要先進行一些設定。本節說明在建立已CRL連接 CA 的 CA 之前,您應該了解的先決條件和選項。

如需使用線上憑證狀態通訊協定 (OCSP) 作為 的替代方案或補充,CRL請參閱 Certificate revocation options自訂 OCSP URL 的 AWS Private CA

CRL 結構

每個 CRL 都是DER編碼檔案。若要下載檔案並使用 OpenSSL 進行檢視,請使用類似下列的命令:

openssl crl -inform DER -in path-to-crl-file -text -noout

CRLs 具有下列格式:

Certificate Revocation List (CRL): Version 2 (0x1) Signature Algorithm: sha256WithRSAEncryption Issuer: /C=US/ST=WA/L=Seattle/O=Example Company CA/OU=Corporate/CN=www.example.com Last Update: Feb 26 19:28:25 2018 GMT Next Update: Feb 26 20:28:25 2019 GMT CRL extensions: X509v3 Authority Key Identifier: keyid:AA:6E:C1:8A:EC:2F:8F:21:BC:BE:80:3D:C5:65:93:79:99:E7:71:65 X509v3 CRL Number: 1519676905984 Revoked Certificates: Serial Number: E8CBD2BEDB122329F97706BCFEC990F8 Revocation Date: Feb 26 20:00:36 2018 GMT CRL entry extensions: X509v3 CRL Reason Code: Key Compromise Serial Number: F7D7A3FD88B82C6776483467BBF0B38C Revocation Date: Jan 30 21:21:31 2018 GMT CRL entry extensions: X509v3 CRL Reason Code: Key Compromise Signature Algorithm: sha256WithRSAEncryption 82:9a:40:76:86:a5:f5:4e:1e:43:e2:ea:83:ac:89:07:49:bf: c2:fd:45:7d:15:d0:76:fe:64:ce:7b:3d:bb:4c:a0:6c:4b:4f: 9e:1d:27:f8:69:5e:d1:93:5b:95:da:78:50:6d:a8:59:bb:6f: 49:9b:04:fa:38:f2:fc:4c:0d:97:ac:02:51:26:7d:3e:fe:a6: c6:83:34:b4:84:0b:5d:b1:c4:25:2f:66:0a:2e:30:f6:52:88: e8:d2:05:78:84:09:01:e8:9d:c2:9e:b5:83:bd:8a:3a:e4:94: 62:ed:92:e0:be:ea:d2:59:5b:c7:c3:61:35:dc:a9:98:9d:80: 1c:2a:f7:23:9b:fe:ad:6f:16:7e:22:09:9a:79:8f:44:69:89: 2a:78:ae:92:a4:32:46:8d:76:ee:68:25:63:5c:bd:41:a5:5a: 57:18:d7:71:35:85:5c:cd:20:28:c6:d5:59:88:47:c9:36:44: 53:55:28:4d:6b:f8:6a:00:eb:b4:62:de:15:56:c8:9c:45:d7: 83:83:07:21:84:b4:eb:0b:23:f2:61:dd:95:03:02:df:0d:0f: 97:32:e0:9d:38:de:7c:15:e4:36:66:7a:18:da:ce:a3:34:94: 58:a6:5d:5c:04:90:35:f1:8b:55:a9:3c:dd:72:a2:d7:5f:73: 5a:2c:88:85
注意

只有在發出參考憑證之後,CRL才會將 存入 Amazon S3。在此之前,Amazon S3 儲存貯體中只會看到acm-pca-permission-test-key檔案。

Amazon S3 CRLs中的 存取政策

如果您計劃建立 CRL,則需要準備 Amazon S3 儲存貯體以將其存放在 中。 AWS 私有 CA 自動將 存放在您指定的 Amazon S3 儲存貯體CRL中,並定期更新。如需詳細資訊,請參閱建立儲存貯體

您的 S3 儲存貯體必須受到連接的IAM許可政策保護。授權使用者和服務主體需要Put許可,才能允許 AWS 私有 CA 將物件放入儲存貯體,以及擷取物件的Get許可。在建立 CA 的主控台程序中,您可以選擇讓 AWS 私有 CA 建立新儲存貯體並套用預設許可政策。

注意

IAM 政策組態取決於 AWS 區域 所涉及的 。區域分為兩個類別:

  • 預設啟用的區域 – 預設為所有 啟用的區域 AWS 帳戶。

  • 預設停用區域 – 預設停用但可由客戶手動啟用的區域。

如需詳細資訊和預設停用區域的清單,請參閱管理 AWS 區域。如需 內容中服務主體的討論IAM,請參閱AWS 選擇加入區域 中的服務主體

當您將 CRLs設定為憑證撤銷方法時, 會 AWS 私有 CA 建立 並將其發佈至 S3 CRL 儲存貯體。S3 儲存貯體需要允許 AWS 私有 CA 服務主體寫入儲存貯體IAM的政策。服務主體的名稱會根據所使用的區域而有所不同,且並非所有的可能性都受到支援。

PCA S3 服務主體

在同一區域中

acm-pca.amazonaws.com

已啟用

已啟用

acm-pca.amazonaws.com

已停用 已啟用

acm-pca.Region.amazonaws.com

已啟用 已停用

不支援

預設政策不會對 CA 套用SourceArn限制。建議您套用較不寬鬆的政策,例如下列政策,這會限制對特定 AWS 帳戶和特定私有 CA 的存取。或者,您可以使用 aws:SourceOrgID 條件金鑰來限制對 中特定組織的存取 AWS Organizations。如需儲存貯體政策的詳細資訊,請參閱 Amazon Simple Storage Service 的儲存貯體政策

{ "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:::amzn-s3-demo-bucket/*", "arn:aws:s3:::amzn-s3-demo-bucket1" ], "Condition":{ "StringEquals":{ "aws:SourceAccount":"111122223333", "aws:SourceArn":"arn:partition:acm-pca:region:111122223333:certificate-authority/CA_ID" } } } ] }

如果您選擇允許預設政策,您可以隨時稍後修改

使用 啟用 S3 Block Public Access (BPA) CloudFront

新的 Amazon S3 儲存貯體預設為啟用封鎖公開存取 (BPA) 功能。包含在 Amazon S3 安全最佳實務 中,BPA是一組存取控制,客戶可以使用這些存取控制來微調對其 S3 儲存貯體中的物件和整個儲存貯體的存取。當 BPA 處於作用中且設定正確時,只有經過授權和驗證 AWS 的使用者才能存取儲存貯體及其內容。

AWS 建議在所有 S3 儲存貯體BPA上使用 ,以避免敏感資訊暴露給潛在的對手。不過,如果您的PKI用戶端CRLs透過公有網際網路擷取 (即未登入 AWS 帳戶時),則需要額外的規劃。本節說明如何使用內容交付網路 (CDN) Amazon 設定私有PKI解決方案 CloudFront,以便在不需要經過身分驗證的用戶端存取 S3 儲存貯體CRLs的情況下運作。

注意

使用 會在 AWS 您的帳戶 CloudFront 產生額外費用。如需詳細資訊,請參閱 Amazon CloudFront Pricing

如果您選擇將 存放在BPA已啟用 的 S3 儲存貯CRL體中,而且不使用 CloudFront,則必須建置另一個CDN解決方案,以確保PKI用戶端可以存取您的 CRL。

為 設定 CloudFront BPA

建立可以存取私有 S3 儲存貯體的 CloudFront 分發,並且可以CRLs提供給未經驗證的用戶端。

設定 的 CloudFront 分佈 CRL
  1. 使用 Amazon CloudFront 開發人員指南 中建立 CloudFront 分佈中的程序建立新的分佈。 https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-creating-console.html

    完成程序時,請套用下列設定:

    • 原始網域 中,選擇您的 S3 儲存貯體。

    • 針對限制儲存貯體存取 選擇

    • 選擇為原始伺服器存取身分建立新身分。

    • 選擇是,在儲存貯體 上授予讀取許可下更新儲存貯體政策

      注意

      在此程序中, 會 CloudFront 修改儲存貯體政策,以允許其存取儲存貯體物件。請考慮編輯此政策,以僅允許存取 crl 資料夾下的物件。

  2. 分佈初始化後,在 CloudFront 主控台中尋找其網域名稱,並將其儲存以進行下一個程序。

    注意

    如果您的 S3 儲存貯體是在 us-east-1 以外的區域中新建立的,當您透過 HTTP 存取已發佈的應用程式時,可能會出現 307 暫時重新導向錯誤 CloudFront。可能需要幾個小時才能傳播儲存貯體的地址。

設定您的 CA BPA

設定新 CA 時,請將別名包含到 CloudFront分佈中。

使用 CNAME 設定您的 CA CloudFront
  • 使用 建立您的 CA在 中建立私有 CA AWS Private CA

    當您執行 程序時,撤銷檔案revoke_config.txt應包含以下幾行,以指定非公有CRL物件,並為 URL 中的分發端點提供 CloudFront:

    "S3ObjectAcl":"BUCKET_OWNER_FULL_CONTROL", "CustomCname":"abcdef012345.cloudfront.net"

    之後,當您使用此 CA 發出憑證時,它們將包含如下所示的區塊:

    X509v3 CRL Distribution Points: Full Name: URI:http://abcdef012345.cloudfront.net/crl/01234567-89ab-cdef-0123-456789abcdef.crl
注意

如果您有此 CA 發行的較舊憑證,他們將無法存取 CRL。

判斷CRL分佈點 (CDP) URI

如果您使用 S3 儲存貯體做為 CA CDP的 , CDPURI可以採用下列其中一種格式。

  • http://amzn-s3-demo-bucket.s3.region-code.amazonaws.com/crl/CA-ID.crl

  • http://s3.region-code.amazonaws.com/amzn-s3-demo-bucket/crl/CA-ID.crl

如果您已使用自訂 設定 CACNAME,則 CDPURI將包含 CNAME,例如, http://alternative.example.com/crl/CA-ID.crl