6.8. ファイル共有に対するアクセス権限の付与

コンピュートインスタンス等のクライアントにファイル共有をマウントする前に、以下のようなコマンドを使用して、クライアントがファイル共有にアクセスできるようにする必要があります。

$ manila access-allow <share> <accesstype> --access-level <accesslevel>  <clientidentifier>

以下の値を置き換えます。

  • share: 「ファイル共有の作成」で作成したファイル共有の共有名または ID
  • accesstype: ファイル共有で要求されるアクセスの種別。以下に種別の例を示します。

    • user: ユーザーまたはグループ名で認証する場合に使用します。
    • ip: IP アドレスでインスタンスを認証する場合に使用します。
    • cephx: ネイティブ CephFS クライアントユーザー名による認証に使用します。

      注記

      アクセスの種別は、ファイル共有のプロトコルにより異なります。NFS 共有の場合は、許可されるのは ip アクセス種別だけです。CIFS の場合は、user アクセス種別が適切です。ネイティブ CephFS ファイル共有の場合は、cephx を使用する必要があります。

  • accesslevel: オプションの設定で、デフォルトは rw です。

    • rw: ファイル共有への読み取り/書き込みアクセスが許可されます。
    • ro: ファイル共有への読み取りアクセスのみが許可されます。
  • clientidentifier -accesstype によって異なります。

    • ip accesstype のための IP アドレスを使用してください。
    • user accesstype には CIFS ユーザーまたはグループを使用します。
    • cephx accesstype にはユーザー名文字列を使用します。

6.8.1. ファイル共有へのアクセスの付与

ユーザーがファイル共有からデータの読み取りと書き込みを可能にするように、エンドユーザークライアントにファイル共有へのアクセス権限を付与する必要があります。

以下の手順に従って、インスタンスの IP アドレスを使用して、クライアントのコンピュートインスタンスに NFS 共有へのアクセス権限を付与します。CIFS 共有の user ルールと CephFS 共有の cephx ルールは同様のパターンに従います。user および cephx アクセスタイプでは、必要に応じて、複数のクライアントで同じ clientidentifier を使用できます。

注記

この手順の例では、クライアントの IP アドレスファミリーバージョンは重要ではありません。この手順のステップでは IPv4 アドレス設定を使用していますが、IPv6 でもステップは同一です。

手順

  1. ファイル共有をマウントする予定のクライアントコンピュートインスタンスの IP アドレスを取得します。ファイル共有に到達できるネットワークに対応する IP アドレスを選択してください。以下の例では、StorageNFS ネットワークの IP アドレスを使用します。

    (user) [stack@undercloud-0 ~]$ openstack server list -f yaml
    - Flavor: m1.micro
      ID: 0b878c11-e791-434b-ab63-274ecfc957e8
      Image: manila-test
      Name: demo-instance0
      Networks: demo-network=172.20.0.4, 10.0.0.53;
      StorageNFS=172.17.5.160
      Status: ACTIVE
    
    (user) [stack@undercloud-0 ~]$ manila access-allow share-01 ip 172.17.5.160
    注記

    ファイル共有へのアクセスには、独自の ID (accessid) が指定されています。

    +-----------------+---------------------------------------+
    | Property        | Value                                 |
    +-----------------+---------------------------------------+
    | access_key      | None
    | share_id        | db3bedd8-bc82-4100-a65d-53ec51b5cba3
    | created_at      | 2018-09-17T21:57:42.000000
    | updated_at      | None
    | access_type     | ip
    | access_to       | 172.17.5.160
    | access_level    | rw
    | state           | queued_to_apply
    | id              | 875c6251-c17e-4c45-8516-fe0928004fff
    +-----------------+---------------------------------------+
  2. アクセス設定が正常に完了したことを確認します。

    (user) [stack@undercloud-0 ~]$ manila access-list share-01
    
    +--------------+-------------+--------------+--------------+--------+ ...
    | id           | access_type | access_to    | access_level | state  | ...
    +--------------+-------------+--------------+--------------+--------+
    | 875c6251-... | ip          | 172.17.5.160 | rw       	   | active | ...
    +--------------+------------+--------------+--------------+---------+ ...

6.8.2. ファイル共有へのアクセスの取り消し

ファイル共有の所有者は、何らかの理由でファイル共有へのアクセスを無効にすることができます。以前に付与したファイル共有へのアクセス権限を取り消すには、以下の手順を実施します。

手順

  • ファイル共有へのアクセスを取り消します。

    $ manila access-deny <share> <accessid>

    <share> を共有名または共有 ID に置き換えます。次に例を示します。

    (user) [stack@undercloud-0 ~]$ manila access-list share-01
    +--------------+-------------+--------------+--------------+--------+
    | id           | access_type | access_to    | access_level | state  | ...
    +--------------+-------------+--------------+--------------+--------+ ...
    | 875c6251-... | ip          | 172.17.5.160 | rw       	   | active | ...
    +--------------+-------------+--------------+--------------+--------+
    
    (user) [stack@undercloud-0 ~]$ manila access-deny share-01 875c6251-c17e-4c45-8516-fe0928004fff
    
    (user) [stack@undercloud-0 ~]$ manila access-list share-01
    
    +--------------+------------+--------------+--------------+--------+ ...
    | id           | access_type| access_to    | access_level | state  | ...
    +--------------+------------+--------------+--------------+--------+ ...
    +--------------+------------+--------------+--------------+--------+ ...
注記

読み取り/書き込み権限を持つ既存のクライアントがあり、クライアントに読み取り専用の権限を付与する場合は、ファイル共有へのアクセスを無効にし、読み取り専用のルールを追加する必要があります。