こんにちは!
みなさまはAWSで OpenSearch を利用されておりますでしょうか?今回は ElasticSerach のセキュリティ面について解説し、運用面について触れていこうと思います。
※本記事で用いられる OpenSearch は Amazon OpenSearch を指しております。
AWSの OpenSearch はマネージドされているため、一から構築するのに大きな手間がかからないのがメリットです。しかしAWSを利用されているなら周知の通り、セキュリティ面は自分自身で設定していかなければなりません。
基本的なアクセス制限やIAM権限の管理なども踏まえ、OpenSearch のセキュリティ面について解説していきます。
OpenSearch のセキュリティにおいて設定を行うべき項目は以下のようになります。
上記についてそれぞれ解説していきます。
基本的に Amazon OpenSearch はマネージドサービスなので、いくつかの点は設定を有効化するだけで済みます。簡単にできますのでぜひご自身の環境に取り入れてください。
IAMによるアクセス制御は、OpenSearchのドメインアクセスポリシーを用いて行います。例えば一部のユーザーを許可したい場合は、以下のように行います。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::123456789012:user/test-user"
]
},
"Action": [
"es:*"
],
"Resource": "arn:aws:es:us-west-1:123456789012:domain/test-domain/*"
}
]
}
記述は普段利用されているIAMポリシーと同じなので、これを調整することでユーザーやIPアドレスの制限が可能となります。
VPC関連のセキュリティ対策としては、まず OpenSearch 構築の際に、パブリックアクセスではなく VPC を用いたアクセスを指定します。
これにより指定したサブネット内に OpenSearch に対するエンドポイントが作成されます。以下の図をご覧ください。
これによってセキュリティを高めることができます。アクセスの制限はセキュリティグループを使って行います。
なおパブリックアクセスかVPCアクセスかの選択は、構築後に変更することはできませんので、その点だけ注意してください。
OpenSearch は、保管時のデータの暗号化とノード間の暗号化を行うことでデータや通信の安全性を高めます。これらの機能は、作成時に有効にすれば適用されるますので、必ず有効にしておきましょう。
監査ログも暗号化と同じく OpenSearch の設定で有効化することができます。有効にすることで以下のようなログを監視できます。
上記のように OpenSearch クラスターでのユーザーアクティビティを追跡します。
設定方法は上記のように「ログ」タブを選択し、セットアップをクリックすると、CloudWatchロググループとポリシーの作成画面に遷移するので、そちらで設定のうえ作成を行います。設定後は、Kibana でも監査ログ作成の有効化を行ってください。これにて監査ログの設定が完了します。
Kibana の認証に Amazon Cognito を用いることでセキュリティを向上することができます。
OpenSearch はアクセスポリシーによりアクセス制限を行うことができるので、オプション的な要素とはなりますが、認証に Amazon Cognito を利用することでよりセキュアなアクセスを実現することができます。
インデックス、ドキュメント、フィールドレベルの参照や更新する権限を制限することで OpenSearch のセキュリティレベルを上げることができます。
これらは Kibana にてロールを設定することで実現できます。詳細はオープンソースの OpenSearch のドキュメントに記載があります。
Kibana におけるテナントは、インデックスパターン、可視化、ダッシュボード、その他の Kibana オブジェクトを保存するための領域です。
Kibana ではマルチテナンシーを利用することで他の Kibanaユーザーと作業を共有できます。またテナントごとにアクセス許可を与えることで、ユーザーのアクセス制御が可能になります。アクセス許可は Kibana 上のロールによって制限が可能となります。
Amazon OpenSearch は AWS側の設定と OpenSearch 側の設定、この両方をセットアップすることで充分なセキュリティを確保することができます。ぜひ開発環境などで挙動などを確認して、充分なセキュリティ体制を整えましょう!
このブログでは、AWS の記事をどんどん公開しておりますので、ご興味のある方は他の記事もご覧いただければと思います。
AWS に関する開発は、お気軽にお問い合わせください。
スモールスタート開発支援、サーバーレス・NoSQLのことなら
ラーゲイトまでご相談ください
低コスト、サーバーレスの
モダナイズ開発をご検討なら
下請け対応可能
Sler企業様からの依頼も歓迎