Class: Auth0::Users::EffectivePermissions::Client
- Inherits:
-
Object
- Object
- Auth0::Users::EffectivePermissions::Client
- Defined in:
- lib/auth0/users/effective_permissions/client.rb
Instance Method Summary collapse
- #initialize(client:) ⇒ void constructor
-
#list(request_options: {}, **params) ⇒ Auth0::Types::ListUserEffectivePermissionsResponseContent
Returns the list of effective permissions for a user, taking into account permissions granted directly to the user, as well as those inherited through roles and group memberships.
- #sources ⇒ Auth0::Sources::Client
Constructor Details
#initialize(client:) ⇒ void
10 11 12 |
# File 'lib/auth0/users/effective_permissions/client.rb', line 10 def initialize(client:) @client = client end |
Instance Method Details
#list(request_options: {}, **params) ⇒ Auth0::Types::ListUserEffectivePermissionsResponseContent
Returns the list of effective permissions for a user, taking into account permissions granted directly to the user, as well as those inherited through roles and group memberships.
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
# File 'lib/auth0/users/effective_permissions/client.rb', line 30 def list(request_options: {}, **params) params = Auth0::Internal::Types::Utils.normalize_keys(params) query_params = {} query_params["from"] = params[:from] if params.key?(:from) query_params["take"] = params.fetch(:take, 50) query_params["resource_server_identifier"] = params[:resource_server_identifier] if params.key?(:resource_server_identifier) Auth0::Internal::CursorItemIterator.new( cursor_field: :next_, item_field: :permissions, initial_cursor: query_params["from"] ) do |next_cursor| query_params["from"] = next_cursor request = Auth0::Internal::JSON::Request.new( base_url: [:base_url], method: "GET", path: "users/#{URI.encode_uri_component(params[:id].to_s)}/effective-permissions", query: query_params, request_options: ) begin response = @client.send(request) rescue Net::HTTPRequestTimeout raise Auth0::Errors::TimeoutError end code = response.code.to_i if code.between?(200, 299) parsed_response = Auth0::Types::ListUserEffectivePermissionsResponseContent.load(response.body) [parsed_response, response] else error_class = Auth0::Errors::ResponseError.subclass_for_code(code) raise error_class.new(response.body, code: code) end end end |