Documentation
¶
Index ¶
- type AcceptConsentRequest
- type ConsentChallenge
- type ConsentRequestSession
- type ConsentVerifier
- type Handler
- type Manager
- func (ccm *Manager) AcceptChallenge(challenge string, acceptRequest *AcceptConsentRequest) (string, *ConsentChallenge, error)
- func (ccm *Manager) CreateChallenge(ar fosite.AuthorizeRequester, subject string, loginChallenge string) (string, error)
- func (ccm *Manager) GetChallenge(challenge string) (*ConsentChallenge, error)
- func (m *Manager) InitiateConsentFlow(ar fosite.AuthorizeRequester, subject string, loginChallenge string) (string, error)
- func (ccm *Manager) RejectChallenge(challenge string, rejectRequest *RejectConsentRequest) (string, *ConsentChallenge, error)
- func (ccm *Manager) ResolveVerifier(verifier string) (*ConsentVerifier, *ConsentChallenge, error)
- func (ccm *Manager) ValidateVerifier(verifier string) (*ConsentVerifier, *ConsentChallenge, error)
- type RejectConsentRequest
- type Request
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AcceptConsentRequest ¶
type AcceptConsentRequest struct {
GrantScope []string `json:"grant_scope"`
GrantAccessTokenAudience []string `json:"grant_access_token_audience"`
Remember bool `json:"remember"`
RememberFor int64 `json:"remember_for"`
HandledAt time.Time `json:"handled_at"`
Session *ConsentRequestSession `json:"session"`
Context map[string]interface{} `json:"context"`
}
type ConsentChallenge ¶
type ConsentChallenge struct {
Challenge string `json:"challenge"`
AuthRequest fosite.AuthorizeRequester `json:"-"`
ClientID string `json:"client_id"`
RequestedScopes []string `json:"requested_scopes"`
RequestedAudience []string `json:"requested_audience"`
RedirectURI string `json:"redirect_uri"`
State string `json:"state"`
Subject string `json:"subject"`
LoginChallenge string `json:"login_challenge"`
CreatedAt time.Time `json:"created_at"`
ExpiresAt time.Time `json:"expires_at"`
Skip bool `json:"skip"`
}
type ConsentRequestSession ¶
type ConsentVerifier ¶
type ConsentVerifier struct {
Verifier string `json:"verifier"`
Challenge string `json:"challenge"`
GrantedScopes []string `json:"granted_scopes"`
GrantedAudience []string `json:"granted_audience"`
Remember bool `json:"remember"`
RememberFor int64 `json:"remember_for"`
Session *ConsentRequestSession `json:"session"`
CreatedAt time.Time `json:"created_at"`
ExpiresAt time.Time `json:"expires_at"`
Rejected bool `json:"rejected"`
RejectReason *RejectConsentRequest `json:"reject_reason,omitempty"`
}
type Handler ¶
type Handler struct {
// contains filtered or unexported fields
}
func NewHandler ¶
func (*Handler) SetupRoutes ¶
type Manager ¶
type Manager struct {
// contains filtered or unexported fields
}
func NewManager ¶
func NewManager(cfg authConfig.Config) *Manager
func (*Manager) AcceptChallenge ¶
func (ccm *Manager) AcceptChallenge(challenge string, acceptRequest *AcceptConsentRequest) (string, *ConsentChallenge, error)
func (*Manager) CreateChallenge ¶
func (*Manager) GetChallenge ¶
func (ccm *Manager) GetChallenge(challenge string) (*ConsentChallenge, error)
func (*Manager) InitiateConsentFlow ¶
func (*Manager) RejectChallenge ¶
func (ccm *Manager) RejectChallenge(challenge string, rejectRequest *RejectConsentRequest) (string, *ConsentChallenge, error)
func (*Manager) ResolveVerifier ¶
func (ccm *Manager) ResolveVerifier(verifier string) (*ConsentVerifier, *ConsentChallenge, error)
func (*Manager) ValidateVerifier ¶
func (ccm *Manager) ValidateVerifier(verifier string) (*ConsentVerifier, *ConsentChallenge, error)
type RejectConsentRequest ¶
type Request ¶
type Request struct {
Challenge string `json:"challenge"`
RequestedScopes []string `json:"requested_scope"`
RequestedAudience []string `json:"requested_audience"`
Skip bool `json:"skip"`
Subject string `json:"subject"`
Client *clients.ClientResponse `json:"client"`
RequestURL string `json:"request_url"`
LoginChallenge string `json:"login_challenge"`
LoginSessionID string `json:"login_session_id"`
ACR string `json:"acr"`
Context map[string]interface{} `json:"context"`
}
Click to show internal directories.
Click to hide internal directories.