

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# C2C ワークフローのデータ保護 AWS Secrets Manager に を使用する
<a name="secrets-manager"></a>

AWS Secrets Manager は、データベース認証情報、API キー、およびその他のシークレット情報を保護するために使用できるシークレットストレージサービスです。次に、コード内で、ハードコードされた認証情報を Secrets Manager への API コールに置き換えることができます。シークレットはそこに存在しないため､お客様のコードを調べている誰かがシークレットを漏らさないようにするのに役立ちます。この概要については、「[AWS Secrets Manager ユーザーガイド](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html)」を参照してください

Secrets Manager は、 AWS Key Management Service キーを使用してシークレットを暗号化します。詳細については、「[AWS Key Management Serviceのシークレットの暗号化と復号](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html)」を参照してください。

Managed Integrations for は と AWS IoT Device Management 統合 AWS Secrets Manager されるため、データを Secrets Manager に保存し、設定でシークレット ID を使用できます。

## マネージド統合でシークレットを使用する方法
<a name="managed-integrations-OAuth"></a>

Open Authorization (OAuth) は、委任アクセス認可のオープンスタンダードであり、ユーザーはパスワードを共有せずに、他のウェブサイトの情報へのアクセスをウェブサイトまたはアプリケーションに許可できます。これは、サードパーティーアプリケーションがユーザーに代わってユーザーデータにアクセスする安全な方法であり、パスワードを共有するよりも安全な方法を提供します。

OAuth では、クライアント ID とクライアントシークレットは、アクセストークンをリクエストするときにクライアントアプリケーションを識別して認証する認証情報です。

Managed Integrations for AWS IoT Device Management は、OAuth を使用して C2C ワークフローを使用する顧客と通信します。お客様は、通信するためにクライアント ID とクライアントシークレットを指定する必要があります。Managed Integrations のお客様は、クライアント ID とクライアントシークレットを AWS アカウントに保存し、マネージド統合は、お客様のアカウントのクライアント ID とクライアントシークレットを読み取ります。

## シークレットを作成する方法
<a name="managed-integrations-createsecret"></a>

シークレットを作成するには、 AWS Secrets Manager 「 ユーザーガイド」の[「 AWS Secrets Manager シークレットを作成する](https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_secret.html)」の手順に従います。

シークレット値を読み取るには、マネージド統合用のカスタマーマネージド AWS KMS キーを使用してシークレットを作成する必要があります。詳細については、「 AWS Secrets Manager ユーザーガイド[」の「 AWS KMS キーのアクセス許可](https://docs.aws.amazon.com/secretsmanager/latest/userguide/security-encryption.html#security-encryption-authz)」を参照してください。

また、次のセクションで IAM ポリシーを使用する必要があります。

## がシークレットを取得 AWS IoT Device Management するための マネージド統合へのアクセスを許可する
<a name="managed-integrations-policies"></a>

マネージド統合が 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}}:{{123456789012}}: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/*"
            ]
        }

    ]
}
```

------