本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
管理您的憑證授權機構憑證
本節說明管理您自己的憑證授權機構 (CA) 憑證的一般工作。
AWS IoT 如果您使用的是 AWS IoT 無法辨識的 CA 簽署的用戶端憑證,您可以註冊憑證授權單位 (CA)。
如果您希望用戶端在第一次連線 AWS IoT 時自動註冊其用戶端憑證,則必須使用簽署用戶端憑證的 CA 進行註冊 AWS IoT。否則,您不需要註冊已簽署用戶端憑證的憑證授權機構憑證。
注意
一個 CA 憑證只能由一個區域中的一個帳戶在 DEFAULT
模式下註冊。一個 CA 憑證可以由一個區域中的多個帳戶在 SNI_ONLY
模式下註冊。
建立憑證授權機構憑證
如果您沒有 CA 憑證,可以使用「開啟 SSL v1.1.1i
注意
您無法在 AWS IoT 主控台中執行此程序。
若要使用開啟 SSL v1.1. 1i 工具建立 CA 憑證
-
產生金鑰對。
openssl genrsa -out
root_CA_key_filename.key
2048 -
透過該金鑰對的私有金鑰來產生憑證授權機構憑證。
openssl req -x509 -new -nodes \ -key
root_CA_key_filename.key
\ -sha256 -days 1024 \ -outroot_CA_cert_filename.pem
註冊您的憑證授權機構憑證
這些程序說明如何從非 Amazon CA 的憑證授權單位 (CA) 註冊憑證。 AWS IoT Core 使用 CA 憑證來驗證憑證的擁有權。若要使用不是 Amazon CA 的 CA 簽署的裝置憑證,您必須使用註冊 CA 憑證,以 AWS IoT Core 便驗證裝置憑證的擁有權。
註冊憑證授權機構憑證 (主控台)。
注意
若要在主控台中註冊憑證授權機構憑證,請在主控台中的註冊憑證授權機構憑證
註冊 CA 憑證 (CLI)
您可以在 DEFAULT
模式或 SNI_ONLY
模式下註冊 CA 憑證。CA 可以在DEFAULT
模式中逐一 AWS 帳戶 註冊 AWS 區域。CA 可以在SNI_ONLY
模式下通過在相同 AWS 帳戶 的多個註冊 AWS 區域。如需 CA 憑證模式的詳細資訊,請參閱certificateMode。
注意
我們建議您在 SNI_ONLY
模式下註冊 CA。您不需要提供驗證證書或對私鑰的訪問權限,並且可以通過多個相同 AWS 帳戶 的註冊 CA AWS 區域。
以 SNI _ ONLY 模式註冊 CA 憑證 (CLI)-建議
先決條件
繼續操作之前,請確定您的電腦上具有下列資訊:
-
根 CA 憑證檔案 (於下列範例中引用為
)root_CA_cert_filename.pem
-
開啟SSL版本 1.1.1i
或更新版本
若要在SNI_ONLY
模式中使用註冊 CA 憑證 AWS CLI
-
使用註冊 CA 憑證 AWS IoT。使用 register-ca-certificate 命令,輸入 CA 憑證檔案名稱。若要取得更多資訊,請參閱《指AWS CLI 令參考》register-ca-certificate
中的。 aws iot register-ca-certificate \ --ca-certificate file://
root_CA_cert_filename.pem
\ --certificate-modeSNI_ONLY
如果成功,此命令會傳回
certificateId
. -
此時,CA 憑證已在中註冊, AWS IoT 但處於非作用中狀態。CA 憑證必須處於作用中狀態,您才能註冊已簽署的任何用戶端憑證。
這個步驟會啟動 CA 憑證。
若要啟用該 CA 憑證,請按如下所示使用 update-certificate 命令。如需詳細資訊,請參閱 AWS CLI 命令參考中的 update-certificate
。 aws iot update-ca-certificate \ --certificate-id
certificateId
\ --new-status ACTIVE
若要查看 CA 憑證的狀態,請使用 describe-ca-certificate 命令。若要取得更多資訊,請參閱《指AWS CLI 令參考》describe-ca-certificate
在DEFAULT
模式下註冊 CA 憑證 (CLI)
先決條件
繼續操作之前,請確定您的電腦上具有下列資訊:
-
根 CA 憑證檔案 (於下列範例中引用為
)root_CA_cert_filename.pem
-
根 CA 憑證私有金鑰檔案 (於下列範例中引用為
)root_CA_key_filename.key
-
開啟SSL版本 1.1.1i
或更新版本
若要在DEFAULT
模式中使用註冊 CA 憑證 AWS CLI
-
要從中獲取註冊碼 AWS IoT,請使用get-registration-code。將傳回的
registrationCode
儲存為私有金鑰驗證憑證的Common Name
。若要取得更多資訊,請參閱《指AWS CLI 令參考》get-registration-code中的。 aws iot get-registration-code
-
產生私有金鑰驗證憑證的金鑰對:
openssl genrsa -out
verification_cert_key_filename.key
2048 -
建立私密金鑰驗證憑證的憑證簽署要求 (CSR)。將憑證的
Common Name
欄位設定為 get-registration-code 傳回的registrationCode
。openssl req -new \ -key
verification_cert_key_filename.key
\ -outverification_cert_csr_filename.csr
將顯示提示要求您輸入一些此憑證的資訊,包括
Common Name
。You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]: State or Province Name (full name) []: Locality Name (for example, city) []: Organization Name (for example, company) []: Organizational Unit Name (for example, section) []: Common Name (e.g. server FQDN or YOUR name) []:
your_registration_code
Email Address []: Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []: -
使用建CSR立私密金鑰驗證憑證:
openssl x509 -req \ -in
verification_cert_csr_filename.csr
\ -CAroot_CA_cert_filename.pem
\ -CAkeyroot_CA_key_filename.key
\ -CAcreateserial \ -outverification_cert_filename.pem
\ -days 500 -sha256 -
使用註冊 CA 憑證 AWS IoT。將 CA 憑證檔案名稱和私有金鑰驗證憑證檔案名稱傳遞給 register-ca-certificate 命令,如下所示。若要取得更多資訊,請參閱《指AWS CLI 令參考》register-ca-certificate
中的。 aws iot register-ca-certificate \ --ca-certificate file://
root_CA_cert_filename.pem
\ --verification-cert file://verification_cert_filename.pem
此指令會傳回
certificateId
,如果成功。 -
此時,CA 憑證已在中註冊, AWS IoT 但並非作用中。CA 憑證必須處於作用中狀態,您才能註冊已簽署的任何用戶端憑證。
這個步驟會啟動 CA 憑證。
若要啟用該 CA 憑證,請按如下所示使用 update-certificate 命令。如需詳細資訊,請參閱 AWS CLI 命令參考中的 update-certificate
。 aws iot update-ca-certificate \ --certificate-id
certificateId
\ --new-status ACTIVE
若要查看 CA 憑證的狀態,請使用 describe-ca-certificate 命令。若要取得更多資訊,請參閱《指AWS CLI 令參考》describe-ca-certificate
建立憑證授權機構驗證憑證以在主控台中註冊憑證授權機構憑證
注意
只有當您從 AWS IoT 主控台註冊 CA 憑證時,才能使用此程序。
如果您未從 AWS IoT 主控台執行此程序,請在 [註冊 CA 憑證] 的主控台中啟動 CA 憑證註冊
繼續操作之前,請確定您在同一台電腦上具有下列可用項目:
-
根 CA 憑證檔案 (於下列範例中引用為
)root_CA_cert_filename.pem
-
根 CA 憑證私有金鑰檔案 (於下列範例中引用為
)root_CA_key_filename.key
-
開啟SSL版本 1.1.1i
或更新版本
如要使用命令列介面來建立 CA 驗證憑證,以於主控台中註冊您的 CA 憑證
-
將
替換為您要建立的驗證憑證金鑰檔案名稱 (例如verification_cert_key_filename.key
verification_cert.key
)。然後執行此命令以產生私有金鑰驗證憑證的金鑰對:openssl genrsa -out
verification_cert_key_filename.key
2048 -
將
替換為您在步驟 1 建立的金鑰檔案名稱。verification_cert_key_filename.key
以您要建立的憑證簽署要求 (CSR) 檔案名稱取
代。例如:verification_cert_csr_filename.csr
verification_cert.csr
。執行此命令以建立CSR檔案。
openssl req -new \ -key
verification_cert_key_filename.key
\ -outverification_cert_csr_filename.csr
命令會提示您輸入其他資訊 (稍後會說明)。
-
在 AWS IoT 主控台的「驗證憑證」容器中,複製註冊碼。
-
openssl 命令提示您輸入的資訊如下列範例所示。除了
Common Name
欄位,您可輸入自己的值或將其留空。於
Common Name
欄位中,請貼上您在上一個步驟中複製的註冊碼。You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]: State or Province Name (full name) []: Locality Name (for example, city) []: Organization Name (for example, company) []: Organizational Unit Name (for example, section) []: Common Name (e.g. server FQDN or YOUR name) []:
your_registration_code
Email Address []: Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []:完成後,指令會建立CSR檔案。
-
替換為您在上一個步驟中使用的verification_cert_csr_filename.csr
。verification_cert_csr_filename.csr
將
替換為您要註冊的 CA 憑證檔案名稱。root_CA_cert_filename.pem
將
替換為 CA 憑證私有金鑰檔案的檔案名稱。root_CA_key_filename.key
將
替換為您要建立的驗證憑證檔案名稱。例如:verification_cert_filename.pem
verification_cert.pem
。openssl x509 -req \ -in
verification_cert_csr_filename.csr
\ -CAroot_CA_cert_filename.pem
\ -CAkeyroot_CA_key_filename.key
\ -CAcreateserial \ -outverification_cert_filename.pem
\ -days 500 -sha256 -
在 [開啟] SSL 命令完成之後,您應該準備好這些檔案,以便在您返回主控台時使用。
-
您的憑證授權機構憑證檔案 (在上一個命令中使用的
)root_CA_cert_filename.pem
-
您在上一個步驟中建立的驗證憑證 (
verification_cert_filename.pem
在上一個命令中使用)
-
停用憑證授權機構憑證
啟用憑證授權單位 (CA) 憑證以進行自動用戶端憑證註冊時,請 AWS IoT 檢查 CA 憑證以確定 CA 為ACTIVE
。如果 CA 憑證是INACTIVE
,則 AWS IoT 不允許註冊用戶端憑證。
藉由將 CA 憑證設定為 INACTIVE
,您可防止自動註冊 CA 所核發的任何新用戶端憑證。
注意
由有風險之憑證授權機構憑證簽署的任何已註冊裝置憑證將持續運作,直到您確實逐一撤銷這些憑證為止。
停用憑證授權機構憑證 (主控台)
使用 AWS IoT 主控台停用憑證授權機構憑證
-
登入 AWS Management Console 並開啟AWS IoT 主控台
。 -
在左側導覽窗格中,選擇 [安全],然後選擇CAs。
-
於憑證授權單位清單中,找出您要停用的憑證授權單位,接著選擇省略號圖示開啟選項選單。
-
在選項選單上,選擇 Deactivate (停用)。
憑證授權機構應在清單中顯示為 Inactive (非作用中)。
注意
主 AWS IoT 控台未提供列出您停用之 CA 所簽署之憑證的方法。如需列出這些憑證的 AWS CLI 選項,請參閱 停用 CA 憑證 (CLI)。
停用 CA 憑證 (CLI)
提 AWS CLI 供停用 CA 憑證的update-ca-certificate
aws iot update-ca-certificate \ --certificate-id
certificateId
\ --new-status INACTIVE
使用 list-certificates-by-ca
使用 describe-ca-certificate