読み取り専用ユーザーが追加されると管理者アクセス権限が vCenter で読み取り専用にダウングレードされる
search cancel

読み取り専用ユーザーが追加されると管理者アクセス権限が vCenter で読み取り専用にダウングレードされる

book

Article ID: 343605

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

Symptoms:

免責事項: これは英文の記事 「Administrator access is downgraded to read-only in vCenter after read-only users are added (1005680)」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。


読み取り専用ユーザーを vCenter Server に追加した後に次の症状が観察される。
  • vCenter Server 管理者のメンバーが読み取り専用権限に制限される。
  • 管理タスクを実行することができない。
  • シック クライアントを使用して vCenter Server にログインしようとすると、次のエラーが表示される。

    You do not have permission to login to the server


Environment

VMware VirtualCenter 2.5.x
VMware vCenter Server 5.1.x
VMware vCenter Server 5.0.x
VMware vCenter Server 4.1.x
VMware vCenter Server 4.0.x

Resolution

ユーザーが複数の Active Directory グループのメンバーになっており、それらのグループの 1 つがオブジェクト(たとえば、ESX ホスト)で読み取り専用ロールで構成されている場合は、上位レベルから伝達された管理者権限が存在するとしても、そのオブジェクトには読み取り専用権限が適用されます。
最上位レベルで読み取り専用権限が適用されていると、管理者には、この権限を削除するアクセス権限がない場合があります。
:この解決方法では SQL データベースを操作するため、ユーザーがデータベースの概念に精通し、先に進む前に適宜バックアップを作成することをお勧めします。これらの手順を実行することに関して不明な点がある場合には、VMware サポートにサポート リクエストを提出し、このナレッジ ベースの記事 ID を問題の記述に含めてください。サポート リクエストの提出方法の詳細については、「サポート リクエストの提出方法」を参照してください。
vCenter Server データベースを復元する、またはデータベースの VPX_Access テーブルを変更して読み取り専用権限を削除するには:
  1. vCenter Server で スタート > ファイル名を指定して実行 をクリックします。
  2. services.msc」と入力し、OK をクリックします。
  3. VMware VirtualCenter Server サービスを右クリックし、停止 を選択します。
  4. SQL Server Management Studio を開きます。
  5. [サーバ名] フィールドに、vCenter Server データベースをホストしている SQL Server の名前を入力します。
  6. vCenter Server データベースに対し、データベース所有者 (dbo) 権限を持つアカウントで認証します。
  7. データベース をクリックします。
  8. vCenter Server データベース をクリックします。

    :使用しているデータベースが不明な場合は、ODBC システム DSN 構成を参照してください。

  9. テーブル をクリックします。
  10. dbo.VPX_Access テーブルを右クリックし、テーブルを開く を選択します。

    :SQL 2008 では、テーブルを開く 上位 200 行の編集 に置き換えられています。
    :カスタム スキーマを使用している場合、dbo.VPX_Access の名前は変更されている可能性があります。

  11. 「ユーザー」のすべてのインスタンスの権限を、-2 (読み取り専用)から -1 (管理者) に変更します。これにより、「ユーザー」のメンバーに vCenter Server での管理者権限が付与されます。
  12. サービス コントロール マネージャから、VirtualCenter Server サービスを再起動します。
  13. VMware vSphere Client を使用して vCenter Server にログインし、「ユーザー」が関係する権限を削除します。
:読み取り専用権限を割り当てるには、新しいセキュリティ グループを作成し、関連するユーザーをそのグループに追加します。その後この新しいグループを使用して、vCenter Server での権限を割り当てることができます。
vpx_access テーブルの [FLAG] 列の値により、次のように伝達が定義されます。
0 - 子オブジェクトへの伝達 を選択せずに、エンティティの USER にロールを割り当てた場合
1 - 子オブジェクトへの伝達 を選択して、エンティティの USER にロールを割り当てた場合
2 - 子オブジェクトへの伝達 を選択せずに、エンティティの GROUP にロールを割り当てた場合
3 - 子オブジェクトへの伝達 を選択して、エンティティの GROUP にロールを割り当てた場合
Oracle の場合は、次の手順を実行できます。
  1. SQL Plus を使用し、vCenter データベース ユーザーとして Oracle データベースにログインします。

    :ベストプラクティスとして、変更を加える前に vCenter サービスをシャットダウンし、vCenter Server データベースを最新の状態に保ち、フルバックアップを作成することをお勧めします。

  2. SQL Plus で次のコマンドを実行します。

    select * from vpx_access

  3. Role_ID の数字を確認します(-1 は管理者ロール、-2 は読み取り専用)。
  4. 権限を変更するには、次のコマンドを実行します。

    update vpx_access (ID, PRINCIPAL, ROLE_ID, ENTITY_ID, FLAG) values ('32', 'Administrator', '-1', '1', '1') where Principal = Administrator;

  5. ユーザーを追加するには、次のコマンドを実行します。

    insert into vpx_access (ID, PRINCIPAL, ROLE_ID, ENTITY_ID, FLAG) values ('100', 'ACME\JSMITH', '-1', '1', '1');

  6. 変更をコミットするには、次のコマンドを実行します。

    commit;

  7. VirtualCenter Server サービスを再起動します。
  8. もう一度 vCenter Server にログインします。


Additional Information

この記事が更新されたときにアラートを表示するには、Actions ボックスで Subscribe to Article をクリックします。