Class: ManageIQ::API::Common::RBAC::Policies
- Inherits:
-
Object
- Object
- ManageIQ::API::Common::RBAC::Policies
- Defined in:
- lib/manageiq/api/common/rbac/policies.rb
Instance Method Summary collapse
- #add_policy(policy_name, description, group_name, role_uuid) ⇒ Object
-
#delete_policy(role) ⇒ Object
delete all policies that contains the role.
-
#initialize(prefix) ⇒ Policies
constructor
A new instance of Policies.
Constructor Details
#initialize(prefix) ⇒ Policies
Returns a new instance of Policies.
6 7 8 |
# File 'lib/manageiq/api/common/rbac/policies.rb', line 6 def initialize(prefix) @prefix = prefix end |
Instance Method Details
#add_policy(policy_name, description, group_name, role_uuid) ⇒ Object
10 11 12 13 14 15 16 17 18 19 |
# File 'lib/manageiq/api/common/rbac/policies.rb', line 10 def add_policy(policy_name, description, group_name, role_uuid) Service.call(RBACApiClient::PolicyApi) do |api_instance| policy_in = RBACApiClient::PolicyIn.new policy_in.name = policy_name policy_in.description = description policy_in.group = group_name policy_in.roles = [role_uuid] api_instance.create_policies(policy_in) end end |
#delete_policy(role) ⇒ Object
delete all policies that contains the role.
22 23 24 25 26 27 28 |
# File 'lib/manageiq/api/common/rbac/policies.rb', line 22 def delete_policy(role) Service.call(RBACApiClient::PolicyApi) do |api_instance| Service.paginate(api_instance, :list_policies, :name => @prefix).each do |policy| api_instance.delete_policy(policy.uuid) if policy.roles.map(&:uuid).include?(role.uuid) end end end |