统一身份认证服务 IAM-自定义策略使用样例:配合单个服务系统策略使用

时间:2023-11-01 16:21:46

配合单个服务系统策略使用

  • 如果您给IAM用户授予单个服务系统策略,例如“BMS FullAccess”,但不希望用户拥有BMS FullAccess中的创建裸金属服务器权限(bms:servers:create),可以创建一条相同Action的自定义策略,并将自定义策略的Effect设置为Deny,然后将系统策略BMS FullAccess和自定义策略同时授予用户,根据Deny优先原则,则用户可以对BMS执行除了创建裸金属服务器外的所有操作。

    以下策略样例表示:拒绝IAM用户创建裸金属服务器。

    {    "Version": "1.1",    "Statement": [        {            "Effect": "Deny",            "Action": [                    "bms:servers:create"            ]        }    ]}
  • 如果您给IAM用户授予“OBS ReadOnlyAccess”权限,但不希望部分用户查看指定OBS资源(例如,不希望用户名以“TestUser”开头的用户查看以“TestBucket”命名开头的桶),可以再创建一条自定义策略来指定特定的资源,并将自定义策略的Effect设置为Deny,然后将OBS ReadOnlyAccess和自定义策略同时授予用户。根据Deny优先原则,则用户可以对以“TestBucket”命名开头之外的桶进行查看操作。
    以下策略样例表示:拒绝以TestUser命名开头的用户查看以TestBucket命名开头的桶。
    {        "Version": "1.1",        "Statement": [                {                        "Effect": "Deny",                        "Action": [                                "obs:bucket:ListAllMybuckets",                                "obs:bucket:HeadBucket",                                "obs:bucket:ListBucket",                                "obs:bucket:GetBucketLocation"                        ],                        "Resource": [                            "obs:*:*:bucket:TestBucket*"                        ],                        "Condition": {                            "StringStartWith": {                                "g:UserName": [                                    "TestUser"                    ]                }            }                }        ]}
support.huaweicloud.com/usermanual-iam/iam_01_0600.html