Simple Log Serviceを使用すると、Key Management Service (KMS) を使用してデータを暗号化し、安全なストレージを確保できます。 静的データ保護が提供される。 このトピックでは、Simple Log Serviceのデータ暗号化メカニズムと、KMSを使用してデータを暗号化する方法について説明します。
前提条件
KMS が有効化されていること。 詳細については、「専用KMSインスタンスの購入」をご参照ください。
データ暗号化メカニズム
Simple Log Serviceでは、次の方法でデータを暗号化できます。
Simple Log serviceのサービスキーの使用
特徴:
使いやすさ: Simple Log Serviceは、データの暗号化とキー管理を完全に担当します。 追加の操作は不要で、ユーザーの管理負担が軽減されます。
キーの独立性: Logstoreごとに独立したデータ暗号化キーが生成され、データのセキュリティが強化されます。
永続性: データ暗号化キーの有効期限が切れないため、安定した永続的なデータ暗号化が保証されます。
サポートされているデータ暗号化アルゴリズム: Advanced encryption Standard (AES) およびSM4。 デフォルトでは、AESアルゴリズムが使用されます。
シナリオ
キーを管理する必要なしに、効率的な方法でデータ暗号化を実装したいと考えています。
キー管理に関する特定の要件はありません。 サービスプロバイダーがキーを管理する必要があります。
データ暗号化キーの長期的な有効性と安定性を確保する必要があります。
目的のお客様:
この方法は、複雑なキー管理タスクを実行せず、安全で簡単な方法でデータを暗号化することのみを望む小規模企業および個人ユーザーに適しています。
Bring Your Own Key (BYOK) 機能の使用
特徴:
制御性: キーのライフサイクル管理を完全に制御できます。 キーを作成、回転、および削除できます。
柔軟性: ビジネス要件に基づいてキーを簡単に更新または置き換えることができ、データのセキュリティと柔軟性が向上します。
Proactivity: キーを事前に管理する必要があります。 たとえば、顧客マスターキー (CMK) を作成し、KMSコンソールでCMKを使用する権限をユーザーに付与する必要があります。
シナリオ
組織には厳格なセキュリティコンプライアンス要件があり、データ暗号化キーを管理したいと考えています。
高いセキュリティ要件を満たすために、データ暗号化キーを管理およびローテーションする必要があります。
キーが漏洩したとき、または他のリスクが存在するときに、データのセキュリティを保護するために、効率的な方法でキーを置換または削除する必要があります。
目的のお客様:
この方法は、データ保護とコンプライアンスの要件が厳しく、カスタムキー管理ポリシーを使用し、キーを管理する専用のサポートチームがある大規模な企業や金融機関に適しています。
CMKを削除または無効にすると、関連するBYOKキーが無効になります。
CMKが無効になると、関連するLogstoreへのすべての読み取りおよび書き込みリクエストは失敗します。
制限事項
データ暗号化の設定時にデータ暗号化方式を指定した場合、設定後に他の方式に切り替えることはできません。 また、暗号化アルゴリズムや暗号化タイプは変更できません。 暗号化機能は、enableパラメーターを使用してのみ有効または無効にできます。 Logstoreの更新を要求するたびに、encrypt_confパラメーターを含める必要があります。
たとえば、データ暗号化の設定時にSimple Log serviceのサービスキーに基づいて暗号化方式を指定した場合、設定後にBYOK機能に基づいて暗号化方式に切り替えることはできません。
暗号化にSimple Log serviceのサービスキーを使用
CreateLogStoreを呼び出してLogstoreを作成する場合、またはUpdateLogStoreを呼び出してLogstoreを変更する場合は、encrypt_confパラメーターを追加して暗号化設定を構成します。 詳細については、「CreateLogStore」または「UpdateLogStore」をご参照ください。
次の表に、encrypt_confパラメーターのフィールドを示します。 user_cmk_infoフィールドを指定しないでください。
パラメーター | データ型 | 説明 | 例: |
---|---|---|---|
object | 暗号化設定のデータ構造。 | ||
enable | Boolean | データ暗号化を有効にするかどうかを指定します。 有効な値:
| true |
encrypt_type | String | 暗号化アルゴリズム。 有効な値: defaultおよびsm4。 enableがtrueに設定されている場合、このパラメーターを設定する必要があります。 | default |
user_cmk_info | EncryptUserCmkConf | 必要に応じて、 このパラメーターを設定すると、BYOKキーが使用されます。 このパラメーターを設定しない場合、Simple Log serviceのサービスキーが使用されます。 | { "cmk_key_id" : "f5136b95-2420-ab31-xxxxxxxxx" "arn" : "acs:ram::13234:role/logsource" "region_id" : "cn-hangzhou" } |
暗号化にBYOK機能を使用する
前提条件
KMS が有効化されていること。 詳細については、「専用KMSインスタンスの購入」をご参照ください。
ステップ1: 完全な承認
この暗号化方法を使用する前に、Simple Log ServiceにKMSへのアクセスを許可する必要があります。
AliyunKMSReadOnlyAccessおよびAliyunKMSCryptoUserAccess権限をRAMロールに付与します。 詳細については、「RAMロールへの権限の付与」をご参照ください。
RAMユーザーを使用してデータを暗号化する場合は、カスタムポリシーを作成し、RAMユーザーに権限を付与する必要があります。
次のポリシーで、Resource要素の <role-name> を、作成されたRAMロールのAlibaba Cloud Resource Name (ARN) に置き換えます。 RAMロールのARNを表示する方法の詳細については、RAMロールのARNを表示するにはどうすればよいですか?
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": "ram:PassRole", "Resource": "acs:ram::<account-id>:role/<role-name>" } ] }
手順2: データ暗号化設定の設定
データ暗号化設定を構成した後、暗号化アルゴリズムまたは暗号化タイプを変更することはできません。 暗号化機能は、enableパラメーターを使用してのみ有効または無効にできます。 Logstoreの更新を要求するたびに、encrypt_confパラメーターを含める必要があります。
既存のLogstoreの場合、UpdateLogStore操作を呼び出し、encrypt_confパラメーターを含めてデータ暗号化設定を構成する必要があります。
UpdateLogStore操作を呼び出す前に、GetLogStore操作を呼び出して、Logstoreの元の設定を取得する必要があります。 設定を変更した後、変更後の設定をUpdateLogStore操作に追加します。
次の表に、encrypt_confパラメーターのフィールドを示します。 user_cmk_infoフィールドが必要です。
パラメーター | データ型 | 説明 | 例: |
---|---|---|---|
object | 暗号化設定のデータ構造。 | ||
enable | Boolean | データ暗号化を有効にするかどうかを指定します。 有効な値:
| true |
encrypt_type | String | 暗号化アルゴリズム。 有効な値: defaultおよびsm4。 enableがtrueに設定されている場合、このパラメーターを設定する必要があります。 | default |
user_cmk_info | EncryptUserCmkConf | 必要に応じて、 このパラメーターを設定すると、BYOKキーが使用されます。 このパラメーターを設定しない場合、Simple Log serviceのサービスキーが使用されます。 | { "cmk_key_id" : "f5136b95-2420-ab31-xxxxxxxxx" "arn" : "acs:ram::13234:role/logsource" "region_id" : "cn-hangzhou" } |
EncryptUserCmkConfデータ構造
パラメーター | データ型 | 説明 | 例: |
cmk_key_id | String | bring-your-own-key (BYOK) キーを使用する場合のカスタマーマスターキー (CMK) のID。 | f5136b95-2420-ab31-xxxxxxxxx |
arn | String | 手順1で作成したRAMロールのARN。 | acs:ram::13234:role/logsource |
region_id | String | CMKが存在するリージョンのID。 | cn-hangzhou |
パラメーター | データ型 | 説明 | 例: |
---|---|---|---|
object | ユーザー定義の暗号化設定のデータ構造。 | ||
cmk_key_id | String | bring-your-own-key (BYOK) キーを使用する場合のカスタマーマスターキー (CMK) のID。 | f5136b95-2420-ab31-xxxxxxxxx |
arn | String | リソースアクセス管理 (RAM) ロールのAlibaba Cloudリソース名 (ARN) 。 | acs:ram::13234:role/logsource |
region_id | String | CMKが存在するリージョンのID。 | cn-杭州 |
encrypt_conf = {
"enable" : True, # Specifies whether to enable data encryption.
"encrypt_type" : "default" # The encryption algorithm. Valid values: default and m4.
"user_cmk_info" : # Optional. If you configure this field, a BYOK key is used. If you do not configure this field, the service key of Simple Log Service is used.
{
"cmk_key_id" : "" # The ID of the CMK to which the BYOK key belongs. Example: f5136b95-2420-ab31-xxxxxxxxx.
"arn" : "" # The ARN of the RAM role created in Step 1.
"region_id" : "" # The ID of the region where the CMK resides.
}
}
関連ドキュメント
詳細については、Simple Log Serviceの次の操作を参照してください。