第12章 RBAC の設定


OpenStack Networking の Role-based Access Control (RBAC) により、neutron 共有ネットワークに対する、より粒度の高い制御が可能となります。以前のリリースでは、ネットワークは全テナントで共有するか、全く共有しないかのいずれかでした。本リリースでは、OpenStack Networking は RBAC テーブルを使用してテナント間における neutron ネットワークの共有を制御するようになりました。これにより、管理者は、ネットワークにインスタンスを接続するパーミッションをどのテナントに付与するかをコントロールすることができます。
その結果、クラウド管理者は、一部のテナントがネットワークを作成できないようにして、そのプロジェクトに対応した既存のネットワークに接続できるようにすることが可能です。

12.1. 新規 RBAC ポリシーの作成

以下の手順では、RBAC ポリシーを使用してテナントに共有ネットワークへのアクセスを許可する方法の実例を紹介します。

  1. 利用可能なネットワークの一覧を表示します。

    # neutron net-list
    +--------------------------------------+-------------+------------------------------------------------------+
    | id                                   | name        | subnets                                              |
    +--------------------------------------+-------------+------------------------------------------------------+
    | 7a7974fe-3b34-4538-b413-d22b985f26e1 | public      | 7de0811f-86ed-4e1b-bc3c-fd2459d0db9d                 |
    | 6e437ff0-d20f-4483-b627-c3749399bdca | web-servers | fa273245-1eff-4830-b40c-57eaeac9b904 192.168.10.0/24 |
    | 1a744cc9-c2b2-4cfc-b06d-a10af5dc8334 | private     | 5196d774-6bd2-4f5d-9c24-a4d1c8987f10 10.0.0.0/24     |
    +--------------------------------------+-------------+------------------------------------------------------+
    Copy to Clipboard Toggle word wrap
  2. テナントの一覧を表示します。

    # keystone tenant-list
    +----------------------------------+-------------+---------+
    |                id                |     name    | enabled |
    +----------------------------------+-------------+---------+
    | 4be7697a4258449a9677adb0fbb71e21 |    admin    |   True  |
    | 09ac16ac50634b08a689c1526a34bb82 |     demo    |   True  |
    | c717f263785d4679b16a122516247deb | engineering |   True  |
    | e8549caaf5bf4bd9b5618622e7c21c97 |   services  |   True  |
    +----------------------------------+-------------+---------+
    Copy to Clipboard Toggle word wrap
  3. engineering テナント (c717f263785d4679b16a122516247deb) へのアクセスを許可する web-servers ネットワークの RBAC を作成します。

    # neutron rbac-create 6e437ff0-d20f-4483-b627-c3749399bdca --type network --target-tenant c717f263785d4679b16a122516247deb --action access_as_shared
    Created a new rbac_policy:
    +---------------+--------------------------------------+
    | Field         | Value                                |
    +---------------+--------------------------------------+
    | action        | access_as_shared                     |
    | id            | 425cdd5c-c080-4045-a896-31d446551de7 |
    | object_id     | 6e437ff0-d20f-4483-b627-c3749399bdca |
    | object_type   | network                              |
    | target_tenant | c717f263785d4679b16a122516247deb     |
    | tenant_id     | 4be7697a4258449a9677adb0fbb71e21     |
    +---------------+--------------------------------------+
    Copy to Clipboard Toggle word wrap

これにより、engineering テナントでインスタンスを web-servers ネットワークに接続できるようになります。

12.2. 設定したRBAC ポリシーの確認

  1. 既存の RBAC ポリシーの ID を取得するには、rbac-list オプションを使用してください。

    # neutron rbac-list
    +--------------------------------------+--------------------------------------+
    | id                                   | object_id                            |
    +--------------------------------------+--------------------------------------+
    | 425cdd5c-c080-4045-a896-31d446551de7 | 6e437ff0-d20f-4483-b627-c3749399bdca |
    +--------------------------------------+--------------------------------------+
    Copy to Clipboard Toggle word wrap
  2. rbac-show を使用して特定の RBAC エントリーの詳細を表示します。

    # neutron rbac-show 425cdd5c-c080-4045-a896-31d446551de7
    +---------------+--------------------------------------+
    | Field         | Value                                |
    +---------------+--------------------------------------+
    | action        | access_as_shared                     |
    | id            | 425cdd5c-c080-4045-a896-31d446551de7 |
    | object_id     | 6e437ff0-d20f-4483-b627-c3749399bdca |
    | object_type   | network                              |
    | target_tenant | c717f263785d4679b16a122516247deb     |
    | tenant_id     | 4be7697a4258449a9677adb0fbb71e21     |
    +---------------+--------------------------------------+
    Copy to Clipboard Toggle word wrap

12.3. RBAC ポリシーの削除

  1. 既存の RBAC の ID を取得するには、rbac-list オプションを使用してください。

    # neutron rbac-list
    +--------------------------------------+--------------------------------------+
    | id                                   | object_id                            |
    +--------------------------------------+--------------------------------------+
    | 425cdd5c-c080-4045-a896-31d446551de7 | 6e437ff0-d20f-4483-b627-c3749399bdca |
    +--------------------------------------+--------------------------------------+
    Copy to Clipboard Toggle word wrap
  2. rbac-delete コマンドで対象の ID 値を指定して RBAC を削除します。

    # neutron rbac-delete 425cdd5c-c080-4045-a896-31d446551de7
    Deleted rbac_policy: 425cdd5c-c080-4045-a896-31d446551de7
    Copy to Clipboard Toggle word wrap
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat