Microservices Engine (MSE) の Nacos 設定センターでは、インスタンス、名前空間、グループ、データ ID ごとにアクセス権限を設定することで、設定情報への不正なアクセスや変更のリスクを軽減できます。
前提条件
使用上の注意
以下の手順では、図に示されているエンジン直接接続パスのアクセス権限を設定します。これにより、Nacos クライアントが RAM ユーザーとして MSE Nacos にアクセスできるようになります。

エンジン制御パスのアクセス認証を設定および使用する場合 (つまり、RAM ユーザーに MSE コンソールの使用権限を付与する場合) は、「レジストリおよび設定センターの認可」をご参照ください。
ステップ 1:きめ細かいポリシーの作成
-
Alibaba Cloud アカウント (ルートアカウント) または
AliyunRAMFullAccess権限を持つ RAM ユーザーを使用して、RAM コンソールにログインします。 左側のナビゲーションペインで、 を選択します。
ポリシー ページで、ポリシーの作成 をクリックします。
-
説明
Resource Access Management (RAM) コンソールのビジュアルエディターは、mse:QueryNacosConfig や mse:UpdateNacosConfig などの MSE Nacos カスタムアクションをサポートしていません。ビジュアルエディターでサービスとして[マイクロサービスエンジン (MSE)]を選択した場合、これらのアクションを検索しても結果は返されません。次の手順で説明するように、[スクリプトエディター]タブでポリシーを作成してください。
ポリシーの作成 ページで、JSON タブをクリックします。
ページには JSON エディターが表示されます。デフォルトのポリシーテンプレートには、
Version要素 ("1"に設定) とStatement配列が含まれています。各ステートメントには、Effect(デフォルトは"Allow")、Action、Resource、およびCondition要素が含まれます。ActionとResource要素を入力する必要があります。-
ポリシードキュメントを入力します。
-
次の表は、設定センターのきめ細かい認証で使用するアクションを示しています。
アクション
説明
mse:QueryNacosConfig
MSE Nacos 設定センター内の設定情報に対する読み取り権限を付与します。SDK を使用して設定情報の取得とリッスンが可能になります。
mse:UpdateNacosConfig
MSE Nacos 設定センター内の設定情報に対する更新権限を付与します。SDK を使用して設定情報の公開と変更が可能になります。
-
設定センターのきめ細かい認証のリソースは、次の形式を使用する必要があります。
acs:mse:*:*:instance/${instanceId}/${namespaceId}/${group}/config/${dataId}「例」セクションを参照して、ポリシードキュメントを変更することもできます。
-
ポリシーの構文と構造の詳細については、「ポリシーの構造と構文」をご参照ください。
-
ページ上部の 最適化 をクリックしてから 行う をクリックし、ポリシーの高度な最適化を実行します。
高度なポリシー最適化機能は、次のタスクを実行します:
互換性のないアクションのリソースまたは条件を分割します。
リソースの範囲を絞り込みます。
重複するステートメントを削除するか、ステートメントをマージします。
ポリシーの作成 ページで、OK をクリックします。
ポリシーの作成 ダイアログボックスで、[ポリシー名] と 説明 を入力し、OK をクリックします。
ステップ 2:権限の付与
RAM ユーザーへの権限の付与
-
左側メニューで、 を選択します。
-
[ユーザー] ページで、RAM ユーザーを見つけ、[アクション] 列の [権限の追加] をクリックします。
複数の RAM ユーザーを選択し、ユーザーリストの下部にある [権限の追加] をクリックして、権限を一括付与することもできます。
-
権限の付与 パネルの 権限ポリシー セクションで、[すべてのポリシータイプ] ドロップダウンリストをクリックし、カスタムポリシー を選択します。検索ボックスに、ステップ 1 で作成したポリシーの名前を入力し、検索結果に表示されるポリシーをクリックしてから、[OK] をクリックします。
-
権限の付与 パネルで、認可が成功したことを確認し、シャットダウン をクリックします。
RAM ロールへの権限の付与
-
権限の付与 パネルの 権限ポリシー セクションで、[すべてのポリシータイプ] ドロップダウンリストをクリックし、カスタムポリシー を選択します。テキストボックスに、ステップ 1 で作成した権限ポリシーの名前を入力し、検索結果から権限ポリシーの名前をクリックしてから、[OK] をクリックします。
-
権限の付与 パネルで、認可が成功したことを確認し、シャットダウン をクリックします。
例
-
指定したインスタンスの設定情報に対する読み取り専用権限を付与します。
{ "Version": "1", "Statement": [ { "Action": [ "mse:QueryNacosConfig" ], "Resource": [ "acs:mse:*:*:instance/${instanceId1}", "acs:mse:*:*:instance/${instanceId2}" ], "Effect": "Allow" } ] } -
指定したインスタンスの設定情報に対する読み取りおよび変更権限を付与します。
{ "Version": "1", "Statement": [ { "Action": [ "mse:QueryNacosConfig", "mse:UpdateNacosConfig" ], "Resource": [ "acs:mse:*:*:instance/${instanceId1}", "acs:mse:*:*:instance/${instanceId2}" ], "Effect": "Allow" } ] }説明${instanceId1} と ${instanceId2} は、設定センターインスタンスの ID のプレースホルダーです。
-
インスタンスの特定の名前空間内の設定情報に対する読み取り専用権限を付与します。
{ "Statement": [ { "Effect": "Allow", "Action": "mse:QueryNacosConfig", "Resource": "acs:mse:*:*:instance/${instanceId}/${namespaceId}" } ], "Version": "1" } -
インスタンスの名前空間内の特定のグループの設定情報に対する読み取りおよび変更権限を付与します。
{ "Statement": [ { "Effect": "Allow", "Action": [ "mse:QueryNacosConfig", "mse:UpdateNacosConfig" ], "Resource": "acs:mse:*:*:instance/${instanceId}/${namespaceId}/${group}" } ], "Version": "1" } -
特定のグループ内のデータ ID で指定された設定情報に対する読み取り専用権限を付与します。
{ "Statement": [ { "Effect": "Allow", "Action": "mse:QueryNacosConfig", "Resource": "acs:mse:*:*:instance/${instanceId}/${namespaceId}/${group}/config/${dataId}" } ], "Version": "1" } -
特定のグループ内のデータ ID で指定された設定情報に対する読み取りおよび変更権限を付与します。
{ "Statement": [ { "Effect": "Allow", "Action": [ "mse:QueryNacosConfig", "mse:UpdateNacosConfig" ], "Resource": "acs:mse:*:*:instance/${instanceId}/${namespaceId}/${group}/config/${dataId}" } ], "Version": "1" }
関連ドキュメント
設定センターのインスタンスレベルの認証については、「Nacos クライアント認証」をご参照ください。