策略管理接口
更新时间:2021-11-24
创建策略
创建权限策略,请参考如下代码:
Python
1def create_policy():
2
3 iam_client = IamClient(iam_sample_conf.config)
4
5 # 创建策略的请求为dict
6 # 设置策略名name
7 # 设置策略描述description
8 # 设置策略内容document,ACL格式序列化后得到的String
9 create_policy_request = {"name": "test_policy", "description": "create policy: test_policy_1",
10 "document": '{ "accessControlList": [ { "region": "bj", "resource": [ "*" ], "effect":'
11 '"Allow", "service": "bce:bos", "permission": [ "READ" ] } ] } '}
12 response = iam_client.create_policy(create_policy_request)
13
14 print(response)
查询策略
查询权限策略,请参考如下代码:
Python
1def get_policy():
2
3 iam_client = IamClient(iam_sample_conf.config)
4
5 # 策略名
6 policy_name = b"test_policy"
7 # 要查询的策略类型,为System时查询系统策略;为Custom时查询自定义策略
8 policy_type = b"Custom"
9 response = iam_client.get_policy(policy_name=policy_name, policy_type=policy_type)
10
11 print(response)
删除策略
删除权限策略,请参考如下代码:
Python
1def delete_policy():
2
3 iam_client = IamClient(iam_sample_conf.config)
4
5 # 策略名
6 policy_name = b"test_policy"
7 response = iam_client.delete_policy(policy_name=policy_name)
8
9 print(response)(policyName);
10}
列举策略
列举权限策略,当policyType为System时,可列举系统内置的策略列表,请参考如下代码:
Python
1def list_policy():
2
3 iam_client = IamClient(iam_sample_conf.config)
4
5 # 要查询的策略类型,为System时查询系统策略;为Custom时查询自定义策略
6 policy_type = b"Custom"
7 # 关键字过滤
8 name_filter = b"test"
9 response = iam_client.list_policy(policy_type=policy_type, name_filter=name_filter)
10
11 print(response)
关联用户权限
为用户关联权限策略,请参考如下代码:
Python
1def attach_policy_to_user():
2
3 iam_client = IamClient(iam_sample_conf.config)
4
5 # 需要关联策略的用户
6 user_name = b"test_user"
7 # 关联的策略
8 policy_name = b"test_policy"
9 # 要查询的策略类型,为System时查询系统策略;为Custom时查询自定义策略
10 policy_type = b"Custom"
11 response = iam_client.attach_policy_to_user(user_name, policy_name, policy_type)
12
13 print(response)
解除用户权限
解除子用户关联的权限策略,请参考如下代码:
Python
1def detach_policy_from_user():
2
3 iam_client = IamClient(iam_sample_conf.config)
4
5 # 需要关联策略的用户
6 user_name = b"test_user"
7 # 关联的策略
8 policy_name = b"test_policy"
9 # 要查询的策略类型,为System时查询系统策略;为Custom时查询自定义策略
10 policy_type = b"Custom"
11 response = iam_client.detach_policy_from_user(user_name, policy_name, policy_type)
12
13 print(response)
列举用户的权限
列举用户关联的权限策略,请参考如下代码:
Python
1def list_policies_from_user():
2
3 iam_client = IamClient(iam_sample_conf.config)
4
5 # 用户名
6 user_name = b"test_user"
7 response = iam_client.list_policies_from_user(user_name)
8
9 print(response)
关联组权限
为用户组关联权限策略,请参考如下代码:
Python
1def attach_policy_to_group():
2
3 iam_client = IamClient(iam_sample_conf.config)
4
5 # 需要关联策略的用户组
6 group_name = b"test_group"
7 # 关联的策略
8 policy_name = b"test_policy"
9 # 要查询的策略类型,为System时查询系统策略;为Custom时查询自定义策略
10 policy_type = b"Custom"
11 response = iam_client.attach_policy_to_group(group_name, policy_name, policy_type)
12
13 print(response)
解除组权限
解除用户组关联的权限策略,请参考如下代码:
Python
1def detach_policy_from_group():
2
3 iam_client = IamClient(iam_sample_conf.config)
4
5 # 需要关联策略的用户组
6 group_name = b"test_group"
7 # 关联的策略
8 policy_name = b"test_policy"
9 # 要查询的策略类型,为System时查询系统策略;为Custom时查询自定义策略
10 policy_type = b"Custom"
11 response = iam_client.detach_policy_from_group(group_name, policy_name, policy_type)
12
13 print(response)
列举组关联的权限
列举组关联的权限策略,请参考如下代码:
Python
1def list_policies_from_group():
2
3 iam_client = IamClient(iam_sample_conf.config)
4
5 # 用户组名
6 group_name = b"test_group"
7 response = iam_client.list_policies_from_group(group_name)
8
9 print(response)
关联角色权限
为角色关联权限策略,请参考如下代码:
Python
1def attach_policy_to_role():
2
3 iam_client = IamClient(iam_sample_conf.config)
4
5 # 需要关联策略的角色
6 role_name = b"test_role"
7 # 关联的策略
8 policy_name = b"test_policy"
9 # 要查询的策略类型,为System时查询系统策略;为Custom时查询自定义策略
10 policy_type = b"Custom"
11 response = iam_client.attach_policy_to_role(role_name, policy_name, policy_type)
12
13 print(response)
解除角色权限
解除角色关联的权限策略,请参考如下代码:
Python
1def detach_policy_from_role():
2
3 iam_client = IamClient(iam_sample_conf.config)
4
5 # 需要关联策略的角色
6 role_name = b"test_role"
7 # 关联的策略
8 policy_name = b"test_policy"
9 # 要查询的策略类型,为System时查询系统策略;为Custom时查询自定义策略
10 policy_type = b"Custom"
11 response = iam_client.detach_policy_from_role(role_name, policy_name, policy_type)
12
13 print(response)
列举角色的权限
列举角色关联的权限策略,请参考如下代码:
Python
1def list_policies_from_role():
2
3 iam_client = IamClient(iam_sample_conf.config)
4
5 # 角色名
6 role_name = b"test_role"
7 response = iam_client.list_policies_from_role(role_name)
8
9 print(response)