本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
License Manager 中授權的密碼編譯簽署
License Manager 可以以密碼編譯方式簽署由ISV或透過核發的授權 AWS Marketplace 代表一個ISV. 簽署允許廠商在應用程式本身內驗證授權的完整性和來源,即使在離線環境中也是如此。
若要簽署授權,License Manager 會使用非對稱 AWS KMS key 屬於ISV和受保護 AWS Key Management Service (AWS KMS). 該客戶管理CMK由數學相關的公鑰和私 key pair 組成。當使用者請求授權時,License Manager 會產生列出授權權利文件的JSON物件,並使用私密金鑰簽署此物件。簽名和純文字JSON物件會傳回給使用者。與這些物件一起呈現的任何一方都可以使用公開金鑰來驗證授權文字尚未變更,以及授權是否由私密金鑰的擁有者簽署。key pair 的私有部分永遠不會離開 AWS KMS。 如需有關非對稱密碼編譯的詳細資訊 AWS KMS,請參閱使用對稱和非對稱金鑰。
注意
License Manager 呼叫 AWS KMS Sign
以及簽署和驗證授權時的Verify
API作業。CMK必須有一個鍵使用值 SIGN_ VERIFY,它才能被這些操作使用。這種CMK不能用於加密和解密。
下列工作流程描述發行密碼編譯簽署的授權:
-
在 AWS KMS 主控台APISDK、或授權管理員會建立非對稱的客戶管理CMK。CMK必須具有符號和驗證的密鑰用法,並支持 RSASSA PSS SHA -256 簽名算法。如需詳細資訊,請參閱建立非對稱CMKs和如何選擇CMK組態。
-
在 License Manager 中,授權管理員會建立包含 AWS KMS ARN或識別碼。組態可以指定「借入」和「暫時」選項之一,也可以同時指定 如需詳細資訊,請參閱建立賣家發出的授權區塊。
-
一般使用者使用
CheckoutLicense
或CheckoutBorrowLicense
API作業取得授權。僅在已設定「借用」的授權上執CheckoutBorrowLicense
行此作業。它會傳回數位簽章,做為回應的一部分,以及JSON物件清單權利。明文JSON如下所示:{ "entitlementsAllowed":[ { "name":"EntitlementCount", "unit":"Count", "value":"1" } ], "expiration":"2020-12-01T00:47:35", "issuedAt":"2020-11-30T23:47:35", "licenseArn":"arn:aws:license-manager::123456789012:license:l-6585590917ad46858328ff02dEXAMPLE", "licenseConsumptionToken":"306eb19afd354ba79c3687b9bEXAMPLE", "nodeId":"100.20.15.10", "checkoutMetadata":{ "Mac":"ABCDEFGHI" } }