Amazon ElastiCache for Redisが保管時の暗号化に対応しました

2017.11.16

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

2017年10月末のアップデートにより、Amazon ElastiCache for Redis が保管時の暗号化に対応しました。

保管時の暗号化を有効にすると

  • ディスク上の sync
  • バックアップ
  • スナップショット

といったデータが暗号化されます。

これらの機能追加により、個人を特定できる情報(PII)など機密度の高い情報を扱うシステムでAmazon ElastiCache for Redisを導入しやすくなりました。

同時に機能追加された、通信暗号化とクライアント認証は次のブログをご確認下さい。

Amazon ElastiCache for Redisの通信暗号化とクライアント認証をやってみた

設定

Redisクラスター作成時に「Encryption at-rest」をチェックするだけです。 暗号化に伴う追加費用は発生しません。

redis-encryption-3.2.6 only

2017/11/15時点では、最新の 3.2.10 では利用出来ません。お気をつけ下さい。

Enables encryption of data on-the-wire. Currently, enabling encryption in-transit can only be done when creating a Redis cluster using Redis version 3.2.6 only.

作成済みのクラスターで有効にすることは出来ません。クラスターの再作成が必要です。

保管時の暗号を有効にしたクラスターの識別方法

管理コンソール

Redis クラスターで赤枠を確認下さい。

redis-amc-enc-at-rest

CLI

aws elasticache describe-cache-clusters のレスポンスの

  • AtRestEncryptionEnabled

を確認します。

$ aws elasticache describe-cache-clusters
{
    "CacheClusters": [
        {
            ...
            "TransitEncryptionEnabled": true,
            "Engine": "redis",
            ...
            "AuthTokenEnabled": true,
            "AtRestEncryptionEnabled": true,
            "EngineVersion": "3.2.6",
            ...
        }
    ]
}

注意

Redis のみ対応。Memcached は未対応

Amazon ElastiCache for Redis にのみ対応しています。 Memcached では使えません。

パフォーマンスへの影響

保管時の暗号化を有効すると、データの暗号・復号のオーバーヘッドが発生します。 パフォーマンスが求められるシステムでは、暗号の有無によるパフォーマンスへの影響をベンチマークするようにお願いします。

対応バージョン

保管時の暗号化は 3.2.6 にしか対応しておりません。 2017/11/15時点で最新の 3.2.10 では利用出来ないため、お気をつけ下さい。

設定は新規作成時のみ有効

暗号化はクラスター作成時のみ指定出来ます。

既存クラスターへの有効化・無効化は出来ません。

まとめ

補完時の暗号化という、地味ではありますが、セキュリティが重要視されるお客様・システム向けには、要件を満たす上で非常に大事な機能追加です。

データ暗号の際にはオーバーヘッドが発生するため、パフォーマンスへのインパクトにお気をつけ下さい。

参考