SearchでのOpenSearchを使用したマルチテナンシ

OpenSearchでのマルチテナントの使用について学習します。

OCI Search with OpenSearchは、マルチテナンシのOpenSearch機能をサポートしています。テナントは、索引パターン、ビジュアライゼーションおよびその他のOpenSearchダッシュボード・オブジェクトを保存するためのスペースで、他のOpenSearchダッシュボード・ユーザーと共有できます。

デフォルトでは、次のテナントを使用できます。

  • プライベート: ユーザーに固有で、共有できません。
  • グローバル: すべてのOpenSearchダッシュボード・ユーザーと共有されますが、ユーザーのロールにはグローバル・テナントへのアクセス権が付与されている必要があります。

追加のテナントを作成し、それらのテナントへの読取りまたは読取り/書込みアクセス権を付与することもできます。

詳細は、OpenSearch Dashboards multi-tenancyを参照してください。

OpenSearchを使用した検索でのマルチテナンシの有効化

OpenSearchで検索でマルチテナンシ機能を使用するには、クラスタのセキュリティ・モードを強制するように設定する必要があります。この設定をチェックし、必要に応じて更新する方法の詳細は、Verify Security ModeおよびUpdating Cluster Security Mode to Enforcecingを参照してください。

マルチテナンシは、新規クラスタに対してデフォルトで有効にする必要があります。構成APIを使用してgetリクエストを行うことで、クラスタでマルチテナンシが有効になっているかどうかを確認できます:

GET _plugins/_security/api/securityconfig

次のレスポンス例は、マルチテナント機能が有効になっているかどうかを判断するためのレスポンスの関連部分、特にkibana要素のmultitenancy_enabled属性を示しています。

{
   "config" : {
      "dynamic" : {
         "filtered_alias_mode" : "warn",
         "disable_rest_auth" : false,
         "disable_intertransport_auth" : false,
         "respect_request_indices_options" : false,
         "kibana" : {
            "multitenancy_enabled" : false,
            "server_username" : "kibanaserver",
            "index" : ".kibana"
         },
   <additional securityconfig response returned for GET request>...

マルチテナンシを有効にする必要がある場合は、次の例に示すように、構成APIでputリクエストを使用して設定を更新します:

PUT _plugins/_security/api/securityconfig/config
{
   "dynamic": {
      "security_mode": "ENFORCING",
      "kibana": {
         "multitenancy_enabled": true,
         "server_username": "kibanaserver",
         "index": ".kibana_1"
      },
   <additional securityconfig details for PUT request>...

OpenSearchを使用した検索でのマルチテナントの使用

クラスタでマルチテナンシ機能が有効になっていることを確認したら、次を実行できます:

  • テナントを作成します。新しいテナントを作成するには、管理者権限が必要です。

  • テナントへのアクセス権をロールに付与します。作成したカスタム・テナントに対してこれを行うだけでなく、グローバル・テナントに対してもこれを行う必要があります。テナントへの読取りアクセスまたは読取り/書込みアクセスをロールに付与できます。

テナントの切替え

OpenSearchダッシュボードにログインしたときにテナントを切り替えるには:

  • トップ・メニューでアカウントのアイコンをクリックします。
  • 「テナントの切替え」をクリックします。アクセスするテナントを選択できない場合は、そのテナントに対する権限を持つロールにユーザー・アカウントが割り当てられていることを確認します。