可观测链路 OpenTelemetry 版自定义RAM授权策略
本文介绍如何通过自定义策略为RAM用户授权。
前提条件
在创建自定义授权策略时,您需要了解授权策略语言的基本结构和语法。更多信息,请参见权限策略基本元素。
请确认RAM用户没有添加系统权限策略AliyunTracingAnalysisFull-Access和AliyunTracingAnalysisReadOnlyAccess。
重要可观测链路 OpenTelemetry 版的系统权限策略和自定义RAM授权策略不支持同时使用。
背景信息
可观测链路 OpenTelemetry 版提供粗粒度的系统授权策略,如果这种粗粒度授权策略不能满足您的需要,那么您可以创建自定义授权策略。例如,您想控制RAM用户对某个具体应用的操作权限,您必须使用自定义授权策略才能满足这种细粒度要求。
步骤一:创建自定义权限策略
使用RAM管理员登录RAM控制台。
在左侧导航栏,选择 。
在权限策略页面,单击创建权限策略。
在创建权限策略页面,单击脚本编辑页签。在策略文档中编写您的授权策略内容。
授权策略内容中各元素说明,请参见权限策略元素说明。
示例:杭州地域所有应用的只读权限。
{ "Version": "1", "Statement": [ { "Action": "xtrace:ReadXtraceApp", "Resource": "acs:xtrace:cn-hangzhou:*:xtrace/*", "Effect": "Allow" }, { "Action": "xtrace:Describe*", "Resource": "*", "Effect": "Allow" } ] }
示例:杭州地域以demo开头的应用的只读权限。
{ "Version": "1", "Statement": [ { "Action": "xtrace:ReadXtraceApp", "Resource": "acs:xtrace:cn-hangzhou:*:xtrace/demo*", "Effect": "Allow" }, { "Action": "xtrace:Describe*", "Resource": "*", "Effect": "Allow" } ] }
单击页面上方的可选:高级策略优化,然后单击执行,对权限策略内容进行高级优化。
高级权限策略优化功能会完成以下任务:
拆分不兼容操作的资源或条件。
收缩资源到更小范围。
去重或合并语句。
在创建权限策略页面,单击确定。
在创建权限策略对话框,输入权限策略名称和备注,然后单击确定。
步骤二:为RAM用户添加权限策略
使用RAM管理员登录RAM控制台。
在左侧导航栏,选择 。
在用户页面,单击目标RAM用户操作列的添加权限。
您也可以选中多个RAM用户,单击用户列表下方的添加权限,为RAM用户批量授权。
在新增授权面板,为RAM用户添加权限。
选择资源范围。
账号级别:权限在当前阿里云账号内生效。
资源组级别:权限在指定的资源组内生效。
重要指定资源组授权生效的前提是该云服务及资源类型已支持资源组,详情请参见支持资源组的云服务。资源组授权示例,请参见使用资源组限制RAM用户管理指定的ECS实例。
选择授权主体。
授权主体即需要添加权限的RAM用户。系统会自动选择当前的RAM用户。
选择权限策略。
权限策略是一组访问权限的集合,分为以下两种。支持批量选中多条权限策略。
单击确认新增授权。
单击关闭。
权限策略元素说明
效果(Effect)
授权效果包括两种:允许(Allow)和拒绝(Deny)。
操作(Action)
Action | 权限说明 |
xtrace:Describe | 可观测链路 OpenTelemetry 版只读权限,粗粒度的读权限,获取该权限后才能进入可观测链路 OpenTelemetry 版控制台。 |
xtrace:ReadXtraceApp | 可观测链路 OpenTelemetry 版只读权限,用于查看应用列表、应用详情、接口调用等信息,可以控制应用以及地域粒度的RAM权限。 |
xtrace:SaveXtraceAppConfig | 可观测链路 OpenTelemetry 版应用配置的保存权限。 |
xtrace:DeleteXtraceApp | 可观测链路 OpenTelemetry 版应用删除的权限。 |
资源(Resource)
用于指定被授权的具体对象。
格式如下:
"Resource": [
"acs:xtrace:<regionid>:*:xtrace/<appname>"
]
请将
<regionid>
替换为指定地域ID。如果当前授权针对所有地域,可替换为*
。请将
<appname>
替换指定应用名称。如果当前授权针对所有应用,可替换为*
;如果当前授权针对的应用名称拥有相同前缀,可替换为名称前缀*
,例如k8s*
。