阿里云的访问控制RAM(Resource Access Management)服务授权子用户管理HBase实例。
描述
您通过云账号创建的HBase实例,都是该账号自己拥有的资源。默认情况下,账号对自己的资源拥有完整的操作权限。通过使用阿里云的什么是访问控制RAM(Resource Access Management)服务,您可以将您云账号下HBase资源的访问及管理权限授予RAM中的子用户。目前,可以在RAM中进行授权的资源类型只有dbinstance,即最细粒度为实例级别。在通过RAM进行授权时,资源的描述方式如下:
请求参数
资源类型 | 授权策略中的资源描述方式 |
---|---|
dbinstance | acs:hbase:$regionid:$accountid:dbinstance/$dbinstanceid
acs:hbase:$regionid:$accountid:dbinstance/ acs:hbase:::dbinstance/ |
参数说明如下:
参数名称 | 说明 |
---|---|
$regionid | 地域的ID,可以用* 代替。
|
$dbinstanceid | 实例的名称,可以用* 代替。
|
$accountid | 云账号的数字ID,可以用* 代替。
|
示例
授权用户可以查看所有实例,但是仅能创建和扩容某个实例的存储,到期时间为2020年8月17日。
{
"Statement": [
{
"Action": [
"hbase:CreateCluster",
"hbase:ResizeDiskSize"
],
"Effect": "Allow",
"Resource": [
"acs:hbase:*:*:*/hb-xxxxxxxx"
],
"Condition": {
"DateLessThan": {
"acs:CurrentTime": "2020-08-17T23:59:59+08:00"
}
}
},
{
"Action": [
"hbase:Describe*"
],
"Effect": "Allow",
"Resource": [
"acs:hbase:*:*:*/*"
],
"Condition": {
"DateLessThan": {
"acs:CurrentTime": "2020-08-17T23:59:59+08:00"
}
}
}
],
"Version": "1"
}
说明 更详细的权限设置请参见权限策略语法和结构。
HBase API的鉴权规则
当子用户通过API访问HBase时,HBase后台会向RAM进行权限检查,以确保调用者拥有相应权限。每个API会根据涉及到的资源以及API的语义来确定需要检查哪些资源的权限。