6.8. 授予共享访问权限
在客户端(如计算实例)上挂载共享前,您必须使用类似如下的命令为客户端授予共享的访问权限:
manila access-allow <share> <accesstype> --access-level <accesslevel> <clientidentifier>
$ manila access-allow <share> <accesstype> --access-level <accesslevel> <clientidentifier>
替换以下值:
-
共享
- 在 第 6.3 节 “创建共享” 中创建共享的共享名称或 ID。 accesstype
- 共享上请求的访问权限类型。有些类型包括:-
用户
:使用根据用户或组名称进行身份验证。 -
IP
:使用通过其 IP 地址验证实例。 cephx
:用于通过原生 CephFS 客户端用户名进行身份验证。注意访问类型取决于共享的协议。对于 NFS 共享,只允许
ip
访问类型。对于 CIFS,用户访问
类型是合适的。对于原生 CephFS 共享,您必须使用cephx
。
-
accesslevel
- 可选,默认为rw
-
rw
:对共享的读写访问。 -
ro
: 对共享的只读访问权限.
-
clientidentifier
- 根据accesstype
的不同而有所不同。-
对
ip
accesstype
使用 IP 地址。 -
对于
user
accesstype
,使用 CIFS 用户或组。 -
为
cephx accesstype
使用用户名字符串。
-
对
6.8.1. 授予对共享的访问权限 复制链接链接已复制到粘贴板!
您必须向最终用户客户端授予对共享的访问权限,以便用户能够从中读取和写入数据到共享。
使用这个流程通过实例的 IP 地址授予客户端计算实例对 NFS 共享的访问权限。CIFS 共享的用户规则和 CephFS 共享的 cephx
规则遵循类似的模式。使用
user
和 cephx
访问类型,如果需要,您可以在 多个客户端间使用相同的客户端标识符
。
在示例中,客户端的 IP 地址系列版本不重要。此流程中的步骤使用 IPv4 地址,但步骤与 IPv6 相同。
流程
检索您要挂载共享的客户端计算实例的 IP 地址。确保您选择了与可以访问共享的网络对应的 IP 地址。在本例中,它是 StorageNFS 网络的 IP 地址:
openstack server list -f yaml manila access-allow share-01 ip 172.17.5.160
(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
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意对共享的访问权限具有自己的 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 +-----------------+---------------------------------------+
+-----------------+---------------------------------------+ | 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 +-----------------+---------------------------------------+
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证访问配置是否成功:
manila access-list share-01
(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 | ... +--------------+------------+--------------+--------------+---------+ ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
6.8.2. 撤销对共享的访问 复制链接链接已复制到粘贴板!
共享的所有者可以因为任何原因撤销对共享的访问。完成以下步骤以撤销之前对共享的访问。
流程
撤销对共享的访问:
manila access-deny <share> <accessid>
$ manila access-deny <share> <accessid>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
<
;share> 替换为共享名称或共享 ID,例如:manila access-list share-01 manila access-deny share-01 875c6251-c17e-4c45-8516-fe0928004fff manila access-list share-01
(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 | ... +--------------+------------+--------------+--------------+--------+ ... +--------------+------------+--------------+--------------+--------+ ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
如果您有一个具有读写权限的客户端,您必须撤销他们对共享的访问权限,如果您希望客户端具有只读权限,则需要添加一个只读规则。