设置访问权限
更新时间:2022-07-29
概述
共享目标的访问权限可以通过权限组控制,注意权限组的协议需要和共享目标的协议一致。 为了方便您的使用,我们在每个地域都为您预先创建了一个默认NFS权限组和默认SMB权限组。默认权限组会自动和您新创建的共享目标绑定。
注意:
虽然默认权限组已经默认配置好了,但您还是需要进一步创建账户并和权限组关联,才能访问共享目标。
创建账户
如果您直接使用默认权限组,下一步就是创建账户。您可以通过API或者bsg.py来创建NFS账户:
- nfsrwflag:共享目标的读写权限,可以指定为ro(只读)或rw(读写)
- nfsipaddr:共享目标可以访问的ip,可以指定为*(都可访问)或者具体的ip地址192.168.100.10或网段192.168.100.0/24
- nfssquash: no_root_squash,root_squash(root用户压缩为匿名用户),all_squash(所有用户压缩为匿名用户)
-
nfssync: sync(数据落盘),async(先暂存于内存)
bsg.py --command=CreateAccount --region=bj --accesskey=ak --secretkey=sk --protocoltype=NFS --nfsrwflag=rw --nfsipaddr=* --nfssquash=no_root_squash --nfssync=sync --accountname=bsgaccounttest
返回信息如下:
Plain Text
1httpStatus: 200
2 (‘content-length’, ’70’)
3 (‘x-application-context’, ‘application:8680’)
4 (‘server’, ‘BWS’)
5 (‘date’, ‘Thu, 27 Apr 2017 10:44:06 GMT’)
6 (‘x-bce-request-id’, ‘1435419f-0075-42a1-8107-2a6cbba0b55c’)
7 (‘content-type’, ‘application/json;charset=UTF-8’)
8 body:
9 {
10 “accountId”: “sg-account-gbcfusryyicl”,
11 “accountName”: “bsgaccounttest”
12 }
使用如下命令创建SMB账户:
Plain Text
1bsg.py --command=CreateAccount --region=bj --accesskey=ak --secretkey=sk --protocoltype=SMB --smbusername=smbuser --smbpassword=smbpassword --accountname=bsgaccountsmb
返回信息如下:
Plain Text
1httpStatus: 200
2 ('content-length', '69')
3 (‘x-application-context’, ‘application:8680’)
4 ('server', 'BWS')
5 ('date', 'Thu, 27 Apr 2017 10:52:22 GMT')
6 ('x-bce-request-id', '00340d73-a193-4fb0-8b8f-568ef3384363')
7 ('content-type', 'application/json;charset=UTF-8')
8 body:
9 {
10 "accountId": "sg-account-daizkorboucz",
11 "accountName": "bsgaccountsmb"
12 }
使用如下命令可以查看账户信息:
Plain Text
1bsg.py --command=GetAccount --region=bj --accesskey=ak --secretkey=sk --accountid=sg-account-ebnpdpqsivge
获取信息如下:
Plain Text
1httpStatus: 200
2('content-length', '203')
3('x-application-context', 'application:8680')
4('server', 'BWS')
5('date', 'Thu, 11 May 2017 06:24:14 GMT')
6('x-bce-request-id', '63dd89d0-fed9-4db8-a702-39351bd82e70')
7('content-type', 'application/json;charset=UTF-8')
8body:
9{
10 "accounts": [
11 {
12 "accountId": "sg-account-ebnpdpqsivge",
13 "accountName": "defaultsmb",
14 "createTime": "2017-05-11T04:58:18Z",
15 "protocolType": "SMB",
16 "smbFileShareConfig": {
17 "userName": "bsgsmb"
18 }
19 }
20 ]
21}
添加账户到权限组
将账户关联到默认权限组之前,您需要首先查到默认权限组的id。使用如下命令可以查看权限组信息:
Plain Text
1bsg.py --command=GetGroup --region=bj --accesskey=ak --secretkey=sk
获取信息如下:
Plain Text
1httpStatus: 200
2 (‘content-length’, ‘148’)
3 (‘x-application-context’, ‘application:8680’)
4 (‘server’, ‘BWS’)
5 (‘date’, ‘Thu, 27 Apr 2017 08:36:06 GMT’)
6 (‘x-bce-request-id’, ‘da7c152f-4f5d-4e08-b652-32b9a9790413’)
7 (‘content-type’, ‘application/json;charset=UTF-8’)
8 body:
9 {
10 “groups”: [
11 {
12 “accounts”: [
13 “”
14 ],
15 “createTime”: “2017-04-27T07:47:00Z”,
16 “groupId”: “sg-group-zbnextrhnvmq”,
17 “groupName”: “bsgtestgroup”,
18 “protocolType”: “NFS”
19 }
20 ]
21 }
所以默认权限组id就是sg-group-zbnextrhnvmq。接着将账户添加到权限组,要求账户和权限组的协议相同:
Plain Text
1bsg.py --command=AssociateAccountToGroup --region=bj --accesskey=ak --secretkey=sk --accountid=sg-account-gbcfusryyicl --groupid=sg-group-zbnextrhnvmq
解除账户和权限组的关联
解除账户和权限组的关联命令:
Plain Text
1bsg.py --command=DissociateAccountFromGroup --region=bj --accesskey=ak --secretkey=sk --accountid=accountid --groupid=groupid
删除账户
账户需要先从权限组中解绑,然后使用删除账户命令:
Plain Text
1bsg.py --command=DeleteAccount --region=bj --accesskey=ak --secretkey=sk --accountid=accountid
关联权限组到共享目标
使用如下命令将权限组关联到共享目标:
Plain Text
1bsg.py --command=AssociateGroupToTarget --region=bj --accesskey=ak --secretkey=sk --targetid=sg-target-ftsmyvqihlmm --bsgid=sg-bj-ubteorjpdotd --groupid=sg-group-zbnextrhnvmq
解除权限组和共享目标的关联
解除权限组和共享目标的关联:
Plain Text
1bsg.py --command=DissociateGroupFromTarget --region=bj --accesskey=ak --secretkey=sk --groupid=groupid --bsgid=bsgid --targetid=targetid
删除权限组
权限组需要先从共享目标中解绑,默认权限组无法删除。删除权限组命令:
Plain Text
1bsg.py --command=DeleteGroup --region=bj --accesskey=ak --secretkey=sk --groupid=groupid
