搜索

7.7. 为最终用户客户端授予共享访问权限

download PDF

您必须向最终用户客户端授予对共享的访问权限,以便用户可以从共享中读取数据并将数据写入共享。

您可以通过实例的 IP 地址授予客户端计算实例对 NFS 共享的访问权限。CIFS 共享的 user 规则和 CephFS 共享的 cephx 规则有类似的特征。对于 用户和 cephx 访问类型,如果需要,您可以在 多个客户端间使用相同的客户端标识符

在客户端(如计算实例)上挂载共享前,您必须使用类似如下的命令授予客户端对共享的访问权限:

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

替换以下值:

  • 共享 :创建的共享的共享名称或 ID,如 第 7.2 节 “创建 NFS、CephFS 或 CIFS 共享” 所述。
  • accesstype :在共享中请求的访问权限类型。有些类型包括:

    • 用户 :使用 按用户或组名称进行身份验证。
    • IP :使用 通过其 IP 地址对实例进行身份验证。
    • cephx :用来通过原生 CephFS 客户端用户名进行身份验证。

      注意

      访问类型取决于共享的协议。对于 CIFS,您可以使用 用户。对于 NFS 共享,您必须使用 ip。对于原生 CephFS 共享,您必须使用 cephx

  • 访问级别 :可选;默认值为 rw

    • rw :对共享的读写访问。
    • ro: 对共享的只读访问权限。
  • Clientidentifier: 根据 accesstype.

    • ip accesstype 使用 IP 地址。
    • 使用一个 CIFS 用户或组作为 user accesstype
    • cephx accesstype 使用用户名字符串。

7.7.1. 授予对 NFS 共享的访问权限

云用户可以通过 IP 地址提供对 NFS 共享的访问。

注意

您可以将以下步骤与 IPv4 或 IPv6 地址一起使用。

流程

  • 检索您计划挂载共享的客户端计算实例的 IP 地址。请确定您选择与可以访问共享的网络对应的 IP 地址。在本例中,它是 StorageNFS 网络的 IP 地址:

    $ openstack server list -f yaml
    - Flavor: m1.micro
      ID: 0b878c11-e791-434b-ab63-274ecfc957e8
      Image: manila-test
      Name: demo-instance0
      Networks: demo-network=198.51.100.4, 10.0.0.53;
      StorageNFS=198.51.100.160
      Status: ACTIVE
    
    $ manila access-allow <share> ip 198.51.100.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       | 198.51.100.160
    | access_level    | rw
    | state           | queued_to_apply
    | id              | 875c6251-c17e-4c45-8516-fe0928004fff
    +-----------------+---------------------------------------+

验证

  • 验证访问配置是否成功:

    $ manila access-list <share>
    
    +--------------+-------------+--------------+--------------+--------+ ...
    | id           | access_type | access_to    | access_level | state  | ...
    +--------------+-------------+--------------+--------------+--------+
    | 875c6251-... | ip          | 198.51.100.160 | rw       	 | active | ...
    +--------------+------------+--------------+--------------+---------+ ...

7.7.2. 授予原生 CephFS 共享的访问权限

云用户可以通过 Ceph 客户端用户名提供对原生 CephFS 共享的访问。共享文件系统服务(manila)可防止使用预先存在的 Ceph 用户,因此您必须创建唯一的 Ceph 客户端用户名。

若要挂载共享,您需要 Ceph 客户端用户名和访问密钥。您可以使用共享文件系统服务 API 检索访问密钥。默认情况下,访问密钥对项目命名空间中的所有用户可见。您可以为同一用户提供对项目命名空间中不同共享的访问权限。然后,用户可以使用客户端计算机上的 CephFS 内核客户端来访问共享。

重要

仅将原生 CephFS 驱动程序与可信客户端一起使用。有关原生 CephFS 后端安全性的信息,请参阅 部署 Red Hat Ceph Storage 和 Red Hat OpenStack Platform 中的 原生 CephFS 后端安全性

流程

  1. 授予用户对原生 CephFS 共享的访问权限:

    $ manila access-allow <share> cephx <user>
    • <share > 替换为共享名称或共享 ID。
    • 将 & lt;user& gt; 替换为 cephx 用户。
  2. 收集用户的访问密钥:

    $ manila access-list <share>

7.7.3. 授予 CIFS 共享的访问权限

云用户可以通过 Active Directory 服务中存在的用户名授予对 CIFS 共享的访问权限。共享文件系统服务(manila)不会在 Active Directory 服务器上创建新用户。它仅通过安全服务验证用户名,访问具有无效用户名的规则 会导致错误 状态。

如果云管理员将 driver_handles_share_servers 参数的值设置为 true,则云用户通过添加安全服务来配置 Active Directory 服务。如果云管理员将 DHSS 参数的值设置为 false,则云管理员将配置 Active Directory 服务并将其与存储网络相关联。

要挂载共享,您必须指定用户的 Active Directory 用户名和密码。您无法通过共享文件系统服务获取此密码。

流程

  • 授予用户对 CIFS 共享的访问权限:

    $ manila access-allow <share> user <user>
    • <share > 替换为共享名称或共享 ID。
    • <user > 替换为与 Active Directory 用户对应的用户名。

7.7.4. 撤销对共享的访问

共享的所有者可以撤销对共享的访问的原因。完成以下步骤以撤销之前授予共享的访问。

流程

  • 撤销对共享的访问权限:

    $ manila access-deny <share> <access-id>
    • <share > 替换为共享名称或共享 ID。
    • <access-id > 替换为共享的访问 ID。

      例如:

      $ manila access-list share-01
      +--------------+-------------+--------------+--------------+--------+
      | id           | access_type | access_to    | access_level | state  | ...
      +--------------+-------------+--------------+--------------+--------+ ...
      | 875c6251-... | ip          | 198.51.100.160 | rw         | active | ...
      +--------------+-------------+--------------+--------------+--------+
      
      $ manila access-deny share-01 875c6251-c17e-4c45-8516-fe0928004fff
      
      $ manila access-list share-01
      
      +--------------+------------+--------------+--------------+--------+ ...
      | id           | access_type| access_to    | access_level | state  | ...
      +--------------+------------+--------------+--------------+--------+ ...
      +--------------+------------+--------------+--------------+--------+ ...
注意

如果您有一个具有读写权限的现有客户端,则必须撤销对共享的访问权限,并添加一个只读规则(如果您希望客户端具有只读权限)。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.