AWS Secrets Manager 用於 C2C 工作流程的資料保護 - 的受管整合 AWS IoT Device Management

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

AWS Secrets Manager 用於 C2C 工作流程的資料保護

AWS Secrets Manager 是一項秘密儲存服務,可用來保護資料庫登入資料、API 金鑰和其他秘密資訊。然後,在您的程式碼中,您可以將硬式編碼登入資料取代為對 Secrets Manager 的 API 呼叫。這有助於確保檢查程式碼的人員不會洩露秘密,因為秘密不存在。如需概觀,若要取得概述,請參閱《AWS Secrets Manager 使用指南》。

Secrets Manager 會使用 AWS Key Management Service 金鑰加密秘密。如需詳細資訊,請參閱 AWS Key Management Service中的機密加密和解密

的受管整合與 AWS IoT Device Management 整合, AWS Secrets Manager 因此您可以將資料存放在 Secrets Manager 中,並在組態中使用秘密 ID。

受管整合如何使用秘密

開放授權 (OAuth) 是委派存取授權的開放標準,可讓使用者授予網站或應用程式在其他網站上存取其資訊的權限,而無需共用其密碼。這是第三方應用程式代表使用者存取使用者資料的安全方式,為共用密碼提供更安全的替代方案。

在 OAuth 中,用戶端 ID 和用戶端秘密是在請求存取字符時識別和驗證用戶端應用程式的登入資料。

的受管整合 AWS IoT Device Management 使用 OAuth 與使用 C2C 工作流程的客戶通訊。客戶需要提供用戶端 ID 和用戶端秘密才能通訊。受管整合客戶將在其 AWS 帳戶中存放用戶端 ID 和用戶端秘密,而受管整合會在客戶帳戶中讀取用戶端 ID 和用戶端秘密。

如何建立秘密

若要建立秘密,請遵循 AWS Secrets Manager 《 使用者指南》中的建立 AWS Secrets Manager 秘密中的步驟。

您必須使用客戶受管 AWS KMS 金鑰建立秘密,受管整合才能讀取秘密值。如需詳細資訊,請參閱 AWS Secrets Manager 《 使用者指南》中的AWS KMS 金鑰許可

您還必須使用下一節中的 IAM 政策。

授予 受管整合的存取權 AWS IoT Device Management ,讓 擷取秘密

若要允許受管整合從 Secrets Manager 擷取秘密值,請在建立秘密時,在秘密的資源政策中包含下列許可。

JSON
{ "Version":"2012-10-17", "Statement" : [ { "Effect" : "Allow", "Principal" : { "Service" : "iotmanagedintegrations.amazonaws.com" }, "Action" : [ "secretsmanager:GetSecretValue" ], "Resource" : "*" , "Condition": { "StringEquals": { "aws:SourceArn": "arn:aws:iotmanagedintegrations:AWS Region:account-id:account-association:account-association-id" } } } ] }

將下列陳述式新增至客戶受管 AWS KMS 金鑰的政策。

JSON
{ "Version":"2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:DescribeKey" ], "Principal": { "Service": [ "iotmanagedintegrations.amazonaws.com" ] }, "Resource": [ "arn:aws:kms:us-east-1:123456789012:key/*" ] } ] }