Documentation ¶
Index ¶
- Variables
- type AuthorizationControllers
- func (c *AuthorizationControllers) ChangePassword() controllers.Controller
- func (c *AuthorizationControllers) Configuration() controllers.Controller
- func (c *AuthorizationControllers) EmailVerificationRequest() controllers.Controller
- func (c *AuthorizationControllers) Introspection() controllers.Controller
- func (c *AuthorizationControllers) Jwks() controllers.Controller
- func (c *AuthorizationControllers) Login() controllers.Controller
- func (c *AuthorizationControllers) OtpForEmailValidation() controllers.Controller
- func (c *AuthorizationControllers) RecoverPassword() controllers.Controller
- func (c *AuthorizationControllers) RecoverPasswordRequest() controllers.Controller
- func (c *AuthorizationControllers) Register(isPublic bool) controllers.Controller
- func (c *AuthorizationControllers) Revoke() controllers.Controller
- func (c *AuthorizationControllers) Token() controllers.Controller
- func (c *AuthorizationControllers) ValidateRecoverPasswordToken() controllers.Controller
- func (c *AuthorizationControllers) VerifyEmail() controllers.Controller
- type BaseControllerContext
- func (ctx *BaseControllerContext) MapRequestBody(dest interface{}) error
- func (ctx *BaseControllerContext) NotifyError(notification models.OAuthNotificationType, err *models.OAuthErrorResponse, ...) error
- func (ctx *BaseControllerContext) NotifySuccess(notification models.OAuthNotificationType, data interface{}) error
Constants ¶
This section is empty.
Variables ¶
var ( // ErrEmptyUserID User ID is an empty string ErrEmptyUserID = models.NewOAuthErrorResponse(models.OAuthInvalidClientError, "User ID is nil or empty.") // ErrInvalidUser User did not pass the object validation ErrInvalidUser = models.NewOAuthErrorResponse(models.OAuthInvalidClientError, "User did not pass validation.") // ErrInvalidUser User did not pass the object validation ErrInvalidPasswordValidation = models.NewOAuthErrorResponse(models.OAuthInvalidClientError, "User did not pass password validation.") // ErrEmailNotVerified User did not pass the object validation ErrEmailNotVerified = models.NewOAuthErrorResponse(models.OAuthInvalidClientError, "User did not validate email address.") // ErrUserNotFound User was not found in the database context ErrUserNotFound = models.NewOAuthErrorResponse(models.OAuthInvalidClientError, "User not found.") // ErrUserNotRemoved There was an error removing the user from the database context ErrUserNotRemoved = models.NewOAuthErrorResponse(models.OAuthInvalidClientError, "DB error, user not removed.") // ErrUserAlreadyExists The user already exists in the database ErrUserAlreadyExists = models.NewOAuthErrorResponse(models.OAuthInvalidClientError, "User already exists.") // ErrEmptyToken No User database context found error response ErrEmptyToken = models.NewOAuthErrorResponse(models.OAuthInvalidRequestError, "JWT token is nil or empty.") // ErrTokenNotFound No User database context found error response ErrTokenNotFound = models.NewOAuthErrorResponse(models.OAuthInvalidRequestError, "JWT token was not found, please check your authorization header or request body.") // ErrInvalidToken No User database context found error response ErrInvalidToken = models.NewOAuthErrorResponse(models.OAuthInvalidRequestError, "JWT token did not pass validation.") // ErrGrantNotSupported No User database context found error response ErrGrantNotSupported = models.NewOAuthErrorResponse(models.OAuthUnsupportedGrantType, "Grant is not currently supported by the system.") // ErrGrantNotSupported No User database context found error response ErrException = models.NewOAuthErrorResponse(models.OAuthUnsupportedGrantType, "Something went wrong on our side, please try again later") )
Functions ¶
This section is empty.
Types ¶
type AuthorizationControllers ¶
type AuthorizationControllers struct { Logger *log.LoggerService Context *execution_context.Context AuthorizationContext *authorization_context.AuthorizationContext }
AuthorizationControllers
func NewAuthorizationControllers ¶
func NewAuthorizationControllers(context interfaces.UserContextAdapter) *AuthorizationControllers
func NewDefaultAuthorizationControllers ¶
func NewDefaultAuthorizationControllers() *AuthorizationControllers
func (*AuthorizationControllers) ChangePassword ¶ added in v0.0.6
func (c *AuthorizationControllers) ChangePassword() controllers.Controller
func (*AuthorizationControllers) Configuration ¶
func (c *AuthorizationControllers) Configuration() controllers.Controller
Configuration Returns the OpenID Oauth configuration endpoint
func (*AuthorizationControllers) EmailVerificationRequest ¶ added in v0.0.6
func (c *AuthorizationControllers) EmailVerificationRequest() controllers.Controller
TODO: Implement better logging Register Create an user in the tenant
func (*AuthorizationControllers) Introspection ¶
func (c *AuthorizationControllers) Introspection() controllers.Controller
Introspection Validates a token in the context returning an openid oauth introspect response
func (*AuthorizationControllers) Jwks ¶
func (c *AuthorizationControllers) Jwks() controllers.Controller
Jwks Returns the public keys for the openid oauth configuration endpoint for validation
func (*AuthorizationControllers) Login ¶ added in v0.0.13
func (c *AuthorizationControllers) Login() controllers.Controller
Login Generate a token for a valid user
func (*AuthorizationControllers) OtpForEmailValidation ¶ added in v0.0.19
func (c *AuthorizationControllers) OtpForEmailValidation() controllers.Controller
Configuration Returns the OpenID Oauth configuration endpoint
func (*AuthorizationControllers) RecoverPassword ¶ added in v0.0.6
func (c *AuthorizationControllers) RecoverPassword() controllers.Controller
func (*AuthorizationControllers) RecoverPasswordRequest ¶ added in v0.0.6
func (c *AuthorizationControllers) RecoverPasswordRequest() controllers.Controller
TODO: Implement better logging Register Create an user in the tenant
func (*AuthorizationControllers) Register ¶
func (c *AuthorizationControllers) Register(isPublic bool) controllers.Controller
Register Create an user in the tenant
func (*AuthorizationControllers) Revoke ¶
func (c *AuthorizationControllers) Revoke() controllers.Controller
TODO: Implement UserManager Revoke Revokes a user or a user refresh tenant, when revoking a user this will remove the user from the database deleting it
func (*AuthorizationControllers) Token ¶
func (c *AuthorizationControllers) Token() controllers.Controller
Login Generate a token for a valid user
func (*AuthorizationControllers) ValidateRecoverPasswordToken ¶ added in v0.0.8
func (c *AuthorizationControllers) ValidateRecoverPasswordToken() controllers.Controller
func (*AuthorizationControllers) VerifyEmail ¶ added in v0.0.6
func (c *AuthorizationControllers) VerifyEmail() controllers.Controller
type BaseControllerContext ¶ added in v0.0.6
type BaseControllerContext struct { Logger *log.LoggerService Request *http.Request Response *http.Response ExecutionContext *execution_context.Context AuthorizationContext *authorization_context.AuthorizationContext TenantID string UserID string User *models.User UserManager *user_manager.UserManager }
func NewBaseContext ¶ added in v0.0.6
func NewBaseContext(r *http.Request) *BaseControllerContext
func (*BaseControllerContext) MapRequestBody ¶ added in v0.0.6
func (ctx *BaseControllerContext) MapRequestBody(dest interface{}) error
func (*BaseControllerContext) NotifyError ¶ added in v0.0.11
func (ctx *BaseControllerContext) NotifyError(notification models.OAuthNotificationType, err *models.OAuthErrorResponse, data interface{}) error
func (*BaseControllerContext) NotifySuccess ¶ added in v0.0.11
func (ctx *BaseControllerContext) NotifySuccess(notification models.OAuthNotificationType, data interface{}) error