class Soar::Policy::AccessManager::Test::OrchestrationProvider::Policy

Public Class Methods

new() click to toggle source

for a specific path and service I want to tell the access manager to query a specific url and paramaters for a policy service_identifier = service_name in router resource_identifier = path in router

# File lib/soar/policy/access_manager/test/orchestration_provider/policy.rb, line 20
def initialize
  policy_host = ENV['POLICY_HOST'] || 'localhost:8080'
  @meta = {
    'service_identifier1' => 'allow_policy',
    'service_identifier2' => 'deny_policy'
  }
  @policies = {
    'allow_policy' => "http://#{policy_host}/allow",
    'deny_policy' => "http://#{policy_host}/deny"
  }
  @request = {
    authentication_identifier: 'authentication_identifier1',
    params: {},
  }
  @resource_identifier = 'resource_identifier1'
end

Public Instance Methods

authorized() click to toggle source
# File lib/soar/policy/access_manager/test/orchestration_provider/policy.rb, line 59
def authorized
  @response['data']['approved']
end
authorized?() click to toggle source
# File lib/soar/policy/access_manager/test/orchestration_provider/policy.rb, line 53
def authorized?
  model_provider = Soar::Policy::AccessManager::ModelProvider::Policy.new(meta: @meta, policies: @policies )
  model = Soar::Policy::AccessManager::Model.new(model_provider)
  @response = model.authorized?(service_identifier: @service_identifier, resource_identifier: @resource_identifier, request: @request)
end
deny_access() click to toggle source
# File lib/soar/policy/access_manager/test/orchestration_provider/policy.rb, line 41
def deny_access
  @service_identifier = 'service_identifier2'
end
grant_access() click to toggle source
# File lib/soar/policy/access_manager/test/orchestration_provider/policy.rb, line 37
def grant_access
  @service_identifier = 'service_identifier1'
end
no_policy() click to toggle source
# File lib/soar/policy/access_manager/test/orchestration_provider/policy.rb, line 45
def no_policy
  @service_identifier = 'service_identifier3'
end
notification() click to toggle source
# File lib/soar/policy/access_manager/test/orchestration_provider/policy.rb, line 49
def notification
  @response['data']['notifications']
end