开发者社区 问答 正文

授权访问鉴权规则是什么

当子用户通过RDS Open API进行资源访问时,RDS后台向RAM进行权限检查,以确保调用者拥有响应权限。 每个不同的RDS API会根据涉及到的资源以及API的语义来确定需要检查哪些资源的权限。具体地,每个API的鉴权规则见下表

Action鉴权规则
CreateDBInstanceacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DeleteDBInstanceacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeDBInstancesacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
SwitchDBInstanceNetTypeacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
ModifyDBInstanceDescriptionacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
ModifyDBInstanceMaintainTimeacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
PurgeDBInstanceLogacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DeleteDatabaseacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
ModifyDBDescriptionacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeFilesForSQLServeracs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeImportsForSQLServeracs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
CancelImportacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
ResetAccountPasswordacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
RevokeAccountPrivilegeacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DeleteAccountacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
CreateBackupacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
CreateTempDBInstanceacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
ModifyBackupPolicyacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeDBInstancePerformanceacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeSlowLogRecordsacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeBinlogFilesacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeSQLLogRecordsacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeOptimizeAdviceOnMissPKacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeOptimizeAdviceOnMissIndexacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeParametersacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
CreatePrepaidDBInstanceForChannelacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
ModifyPrepaidDBInstanceSpecacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
CreatePostpaidDBInstanceForChannelacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
ModifyPostpaidDBInstanceSpecacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeDBInstanceAttributeacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
RestartDBInstanceacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
ModifySecurityIpsacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
UpgradeDBInstanceEngineVersionacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
CreateDatabaseacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeDatabasesacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
CreateUploadPathForSQLServeracs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
ImportDataForSQLServeracs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
ImportDataBaseBetweenInstancesacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
CreateAccountacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
GrantAccountPrivilegeacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeAccountsacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
ModifyAccountDescriptionacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeBackupsacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeBackupPolicyacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeResourceUsageacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeSlowLogsacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeErrorLogsacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeSQLLogReportsacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeOptimizeAdviceOnStorageacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeOptimizeAdviceOnExcessIndexacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
DescribeOptimizeAdviceByDBAacs:rds:$regionid:$accountid:dbinstance/$dbinstanceid
ModifyeParameteracs:rds:$regionid:$accountid:dbinstance/$dbinstanceid

展开
收起
云栖大讲堂 2017-10-19 13:48:37 1935 分享 版权
阿里云 AI 助理回答

在阿里云的RDS服务中,当子用户通过Open API访问资源时,确实需要遵循细粒度的权限控制规则,以确保操作的安全性和合规性。上述表格展示了一系列RDS API操作及其对应的权限检查规则。这些规则基于RAM(Resource Access Management)服务来实施,确保每个API调用者具有执行特定操作所需的权限。

规则格式如acs:rds:$regionid:$accountid:dbinstance/$dbinstanceid,解释如下:

  • acs: 是阿里云服务的前缀。
  • rds: 指明该权限是针对RDS服务的。
  • $regionid: 表示操作涉及的区域ID,例如cn-hangzhou
  • $accountid: 是阿里云账户的ID,表明权限属于哪个账户。
  • dbinstance/$dbinstanceid 指定权限作用于具体的数据库实例,其中$dbinstanceid是数据库实例的唯一标识。

这意味着,如果一个子用户想要执行如CreateDBInstance这样的操作,RAM会检查该子用户是否拥有形如acs:rds:$regionid:$accountid:dbinstance/$dbinstanceid的权限,确保其有权限在指定区域和账户下的特定数据库实例上创建新的数据库实例。

对于开发者或系统管理员来说,了解这些鉴权规则至关重要,因为这直接关系到如何为不同角色的子用户正确配置访问策略,既保证系统的安全性,又不会过度限制必要的操作权限。通过RAM,可以实现对子用户的精细化权限管理,比如只允许某个子用户查看(Describe)数据库实例,而不允许其修改(Modify)或删除(Delete)实例,从而达到权限最小化原则,增强系统的安全性。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答