class OAuth2::Provider::Client

Included Modules

Extended Modules

Defined in:

models/oauth2/provider/client.cr

Instance Method Summary

Instance methods inherited from module Ktistec::Model::Common

created_at : Time created_at, created_at=(created_at : Time) created_at=, updated_at : Time updated_at, updated_at=(updated_at : Time) updated_at=

Instance methods inherited from module Ktistec::Model

==(other : self)
==(other)
==
, _run_validations _run_validations, _save_model(skip_validation = false) _save_model, _serialize_graph(nodes, association = nil, index = nil, skip_associated = false) _serialize_graph, assign(properties : Hash(String, Any), *, _strict : Bool = false) forall Any
assign(*, _strict : Bool = false, **properties)
assign
, changed!(*properties : Symbol) changed!, changed?
changed?(*properties : Symbol)
changed?
, clear!
clear!(*properties : Symbol)
clear!
, destroy destroy, destroyed? destroyed?, errors errors, hash(hasher) hash, id : Int64 | Nil id, id=(id : Int64 | Nil) id=, inspect(io : IO) inspect, new_record? new_record?, reload! reload!, save(skip_validation = false, skip_associated = false) save, serialize_graph(skip_associated = false) serialize_graph, table_name table_name, to_h to_h, to_json(json : JSON::Builder) to_json, to_s(io : IO) to_s, update_property(property, value) update_property, valid?(skip_associated = false) valid?, validate(skip_associated = false) validate

Constructor methods inherited from module Ktistec::Model

new(properties : Hash(String, Any), *, _strict : Bool = false) forall Any
new(*, _strict : Bool = false, **properties)
new

Macros inherited from module Ktistec::Model

belongs_to(name, primary_key = id, foreign_key = nil, class_name = nil, inverse_of = nil) belongs_to, derived(decl, *, aliased_to) derived, has_many(name, primary_key = id, foreign_key = nil, class_name = nil, inverse_of = nil) has_many, has_one(name, primary_key = id, foreign_key = nil, class_name = nil, inverse_of = nil) has_one, validates(property, &block) validates

Instance Method Detail

def _association_access_tokens #

[View source]
def _has_many_setter_for_access_tokens(access_tokens_ : Enumerable(AccessToken), update_associations = true) : Enumerable(AccessToken) #

[View source]
def access_tokens(include_deleted : Bool = false, include_undone : Bool = false) : Enumerable(AccessToken) #

[View source]
def access_tokens=(access_tokens_ : Enumerable(AccessToken)) : Enumerable(AccessToken) #

[View source]
def after_validate #

[View source]
def before_destroy #

[View source]
def client_id : String #

Public identifier for a third-party application.

When an application wants to request access to a user's account, it sends this ID to identify itself. It is not a secret.


[View source]
def client_id=(client_id : String) #

Public identifier for a third-party application.

When an application wants to request access to a user's account, it sends this ID to identify itself. It is not a secret.


[View source]
def client_name : String #

A human-readable name for the application.

The name is shown to the user on the consent screen so they know which application is asking for permission.


[View source]
def client_name=(client_name : String) #

A human-readable name for the application.

The name is shown to the user on the consent screen so they know which application is asking for permission.


[View source]
def client_secret : String #

Client secret.

This is a confidential secret known only to the application and the Ktistec server. It's used clients to authenticate themselves when they exchange an authorization code for an access token. This proves that the request is coming from the legitimate application.


[View source]
def client_secret=(client_secret : String) #

Client secret.

This is a confidential secret known only to the application and the Ktistec server. It's used clients to authenticate themselves when they exchange an authorization code for an access token. This proves that the request is coming from the legitimate application.


[View source]
def last_accessed_at : Time | Nil #

Last accessed timestamp.

Records when this client last accessed the server (when it exchanged an authorization code for an access token). Used for tracking client activity and identifying unused clients.


[View source]
def last_accessed_at=(last_accessed_at : Time | Nil) #

Last accessed timestamp.

Records when this client last accessed the server (when it exchanged an authorization code for an access token). Used for tracking client activity and identifying unused clients.


[View source]
def manual : Bool #

Manual registration flag.

Indicates whether this client was registered manually by an administrator (true) or through dynamic client registration (false).


[View source]
def manual=(manual : Bool) #

Manual registration flag.

Indicates whether this client was registered manually by an administrator (true) or through dynamic client registration (false).


[View source]
def redirect_uris : String #

A list of redirect URIs.

This is a critical security feature. It is a list of one or more URIs that the Ktistec server is allowed to redirect the user back to after they have authorized the application. The redirect_uri sent in the authorization request must be one of the URLs in this list.


[View source]
def redirect_uris=(redirect_uris : String) #

A list of redirect URIs.

This is a critical security feature. It is a list of one or more URIs that the Ktistec server is allowed to redirect the user back to after they have authorized the application. The redirect_uri sent in the authorization request must be one of the URLs in this list.


[View source]
def scope : String #

Scopes.

Defines the specific permissions the application is requesting (e.g., read, write). The user will see these requested scopes on the consent screen and must approve them. The resulting access token will be limited to these permissions.


[View source]
def scope=(scope : String) #

Scopes.

Defines the specific permissions the application is requesting (e.g., read, write). The user will see these requested scopes on the consent screen and must approve them. The resulting access token will be limited to these permissions.


[View source]