diff options
| author | mo khan <mo@mokhan.ca> | 2025-03-06 11:37:01 -0700 |
|---|---|---|
| committer | mo khan <mo@mokhan.ca> | 2025-03-06 11:37:01 -0700 |
| commit | bad76558aca0719db95f5572c7847fd971051186 (patch) | |
| tree | ac04873ec207edead082cdf8dc4e304c4cde9ad0 /bin | |
| parent | 27e5b886ad9e9e4c0d831162dbae9d9025fb2903 (diff) | |
refactor: move protobuf rpc services to lib/authx/rpc
Diffstat (limited to 'bin')
| -rwxr-xr-x | bin/api | 6 | ||||
| -rwxr-xr-x | bin/idp | 5 | ||||
| -rwxr-xr-x | bin/rpc | 6 |
3 files changed, 11 insertions, 6 deletions
@@ -18,7 +18,7 @@ end lib_path = Pathname.new(__FILE__).parent.parent.join('lib').realpath.to_s $LOAD_PATH.unshift(lib_path) unless $LOAD_PATH.include?(lib_path) -require 'ability_services_pb' +require 'authx' GRPC.logger = Logger.new($stderr, level: :debug) $scheme = ENV.fetch("SCHEME", "http") @@ -79,8 +79,8 @@ class API def authorized?(request, permission) # TODO:: Check the JWT for the appropriate claim # Connect to the Authz RPC endpoint Ability.allowed?(subject, permission, resource) - client = ::Authx::Ability::Stub.new('localhost:50051', :this_channel_is_insecure) # TODO:: memorize client - reply = client.allowed(::Authx::AllowRequest.new(subject: "", permission: permission, resource: "")) + client = ::Authx::Rpc::Ability::Stub.new('localhost:50051', :this_channel_is_insecure) # TODO:: memorize client + reply = client.allowed(::Authx::Rpc::AllowRequest.new(subject: "", permission: permission, resource: "")) puts "***" * 10 puts reply.inspect puts "***" * 10 @@ -13,6 +13,11 @@ gemfile do gem "webrick", "~> 1.0" end +lib_path = Pathname.new(__FILE__).parent.parent.join('lib').realpath.to_s +$LOAD_PATH.unshift(lib_path) unless $LOAD_PATH.include?(lib_path) + +require 'authx' + $scheme = ENV.fetch("SCHEME", "http") $port = ENV.fetch("PORT", 8282).to_i $host = ENV.fetch("HOST", "localhost:#{$port}") @@ -11,7 +11,7 @@ gemfile do gem "logger", "~> 1.0" end -lib_path = Pathname.new(__FILE__).parent.parent.join('lib').realpath.to_s +lib_path = Pathname.new(__FILE__).parent.parent.join('lib/authx/rpc').realpath.to_s $LOAD_PATH.unshift(lib_path) unless $LOAD_PATH.include?(lib_path) require 'ability_services_pb' @@ -22,12 +22,12 @@ class ProjectPolicy < DeclarativePolicy::Base rule { owner }.enable :create_project end -class AbilityHandler < ::Authx::Ability::Service +class AbilityHandler < ::Authx::Rpc::Ability::Service def allowed(request, _call) puts [request, _call].inspect GRPC.logger.info([request, _call].inspect) - ::Authx::AllowReply.new(result: true) + ::Authx::Rpc::AllowReply.new(result: true) # TODO:: entrypoint to declarative policies # AllowReply.new(result: policy_for(request).can?(request.permission)) end |
