/// <summary> /// 批量移除策略 /// </summary> /// <param name="code">角色唯一标志</param> /// <param name="policies">策略 ID 列表</param> /// <param name="cancellationToken"></param> /// <returns></returns> public async Task <CommonMessage> RemovePolicies( string code, IEnumerable <string> policies, CancellationToken cancellationToken = default) { var param = new RemovePolicyAssignmentsParam(policies, PolicyAssignmentTargetType.ROLE) { TargetIdentifiers = new string[] { code }, }; var res = await client.Request <RemovePolicyAssignmentsResponse>(param.CreateRequest(), cancellationToken); return(res.Result); }
/// <summary> /// 移除策略 /// </summary> /// <param name="userId"></param> /// <param name="policies"></param> /// <param name="cancellationToken"></param> /// <returns></returns> public async Task <CommonMessage> RemovePolicies( string userId, IEnumerable <string> policies, CancellationToken cancellationToken = default) { var param = new RemovePolicyAssignmentsParam() { TargetType = PolicyAssignmentTargetType.USER, TargetIdentifiers = new string[] { userId }, Policies = policies, }; await client.GetAccessToken(); var res = await client.Request <RemovePolicyAssignmentsResponse>(param.CreateRequest(), cancellationToken); return(res.Result); }
/// <summary> /// 撤销策略授权 /// </summary> /// <param name="policies">策略 code 列表</param> /// <param name="targetType"></param> /// <param name="targetIdentifiers">可选值为 USER (用户) 和 ROLE (角色)</param> /// <param name="cancellationToken">用户 id 列表和角色 code 列表</param> /// <returns></returns> public async Task <CommonMessage> RemoveAssignments( IEnumerable <string> policies, PolicyAssignmentTargetType targetType, IEnumerable <string> targetIdentifiers, CancellationToken cancellationToken = default) { var param = new RemovePolicyAssignmentsParam(policies, targetType) { TargetIdentifiers = targetIdentifiers, }; await client.GetAccessToken(); var res = await client.Request <RemovePolicyAssignmentsResponse>(param.CreateRequest(), cancellationToken); return(res.Result); }