Sha256: ab41de482ff7a2b62f06aeb8be7d026fe195583f7d75689c3e73b2c8da3e11e9
Contents?: true
Size: 1.03 KB
Versions: 1
Compression:
Stored size: 1.03 KB
Contents
module Oidc class AccessToken < Rack::OAuth2::AccessToken::Bearer attr_required :client attr_optional :id_token def initialize(attributes = {}) super @token_type = :bearer end def userinfo!(params = {}) hash = resource_request do get client.userinfo_uri, params end ResponseObject::UserInfo.new hash end def to_mtls(attributes = {}) (required_attributes + optional_attributes).each do |key| attributes[key] = self.send(key) end MTLS.new attributes end private def resource_request res = yield case res.status when 200 res.body.with_indifferent_access when 400 raise BadRequest.new('API Access Faild', res) when 401 raise Unauthorized.new('Access Token Invalid or Expired', res) when 403 raise Forbidden.new('Insufficient Scope', res) else raise HttpError.new(res.status, 'Unknown HttpError', res) end end end end require 'oidc/access_token/mtls'
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
oidc-0.0.1 | lib/oidc/access_token.rb |