阿里云存储网关设置访问权限

共享目标的访问权限可以通过权限组控制,注意权限组的协议需要和共享目标的协议一致。为了方便您的使用,我们在每个地域都为您预先创建了一个默认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

返回信息如下:

httpStatus: 200 (‘content-length’, ’70’) (‘x-application-context’, ‘application:8680’) (‘server’, ‘BWS’) (‘date’, ‘Thu, 27 Apr 2017 10:44:06 GMT’) (‘x-bce-request-id’, ‘1435419f-0075-42a1-8107-2a6cbba0b55c’) (‘content-type’, ‘application/json;charset=UTF-8’) body: { “accountId”: “sg-account-gbcfusryyicl”, “accountName”: “bsgaccounttest” }

使用如下命令创建SMB账户:

bsg.py --command=CreateAccount --region=bj --accesskey=ak --secretkey=sk --protocoltype=SMB --smbusername=smbuser --smbpassword=smbpassword --accountname=bsgaccountsmb

返回信息如下:

httpStatus: 200 ('content-length', '69') (‘x-application-context’, ‘application:8680’) ('server', 'BWS') ('date', 'Thu, 27 Apr 2017 10:52:22 GMT') ('x-bce-request-id', '00340d73-a193-4fb0-8b8f-568ef3384363') ('content-type', 'application/json;charset=UTF-8') body: {"accountId": "sg-account-daizkorboucz", "accountName": "bsgaccountsmb" }

使用如下命令可以查看账户信息:

bsg.py --command=GetAccount --region=bj --accesskey=ak --secretkey=sk --accountid=sg-account-ebnpdpqsivge

获取信息如下:

httpStatus: 200('content-length', '203')('x-application-context', 'application:8680')('server', 'BWS')('date', 'Thu, 11 May 2017 06:24:14 GMT')('x-bce-request-id', '63dd89d0-fed9-4db8-a702-39351bd82e70')('content-type', 'application/json;charset=UTF-8')body:{ "accounts": [ { "accountId": "sg-account-ebnpdpqsivge", "accountName": "defaultsmb", "createTime": "2017-05-11T04:58:18Z", "protocolType": "SMB", "smbFileShareConfig": { "userName": "bsgsmb" } } ]}

添加账户到权限组

将账户关联到默认权限组之前,您需要首先查到默认权限组的id。使用如下命令可以查看权限组信息:

bsg.py --command=GetGroup --region=bj --accesskey=ak --secretkey=sk

获取信息如下:

httpStatus: 200 (‘content-length’, ‘148’) (‘x-application-context’, ‘application:8680’) (‘server’, ‘BWS’) (‘date’, ‘Thu, 27 Apr 2017 08:36:06 GMT’) (‘x-bce-request-id’, ‘da7c152f-4f5d-4e08-b652-32b9a9790413’) (‘content-type’, ‘application/json;charset=UTF-8’) body: { “groups”: [ { “accounts”: [ “” ], “createTime”: “2017-04-27T07:47:00Z”, “groupId”: “sg-group-zbnextrhnvmq”, “groupName”: “bsgtestgroup”, “protocolType”: “NFS” } ] }

所以默认权限组id就是sg-group-zbnextrhnvmq。接着将账户添加到权限组,要求账户和权限组的协议相同:

bsg.py --command=AssociateAccountToGroup --region=bj --accesskey=ak --secretkey=sk --accountid=sg-account-gbcfusryyicl --groupid=sg-group-zbnextrhnvmq

解除账户和权限组的关联

解除账户和权限组的关联命令:

bsg.py --command=DissociateAccountFromGroup --region=bj --accesskey=ak --secretkey=sk --accountid=accountid --groupid=groupid

删除账户

账户需要先从权限组中解绑,然后使用删除账户命令:

bsg.py --command=DeleteAccount --region=bj --accesskey=ak --secretkey=sk --accountid=accountid

关联权限组到共享目标

使用如下命令将权限组关联到共享目标:

bsg.py? --command=AssociateGroupToTarget --region=bj --accesskey=ak --secretkey=sk --targetid=sg-target-ftsmyvqihlmm --bsgid=sg-bj-ubteorjpdotd --groupid=sg-group-zbnextrhnvmq

解除权限组和共享目标的关联

解除权限组和共享目标的关联:

bsg.py --command=DissociateGroupFromTarget --region=bj --accesskey=ak --secretkey=sk --groupid=groupid --bsgid=bsgid --targetid=targetid

删除权限组

权限组需要先从共享目标中解绑,默认权限组无法删除。删除权限组命令:

bsg.py --command=DeleteGroup --region=bj --accesskey=ak --secretkey=sk --groupid=groupid