Documentation ¶
Overview ¶
Package oauth2 provides handlers for OAuth2 login and callback requests.
Index ¶
- Variables
- func CallbackHandler(config *oauth2.Config, success, failure http.Handler) http.Handler
- func LoginHandler(config *oauth2.Config, failure http.Handler) http.Handler
- func StateFromContext(ctx context.Context) (string, error)
- func StateHandler(config gologin.CookieConfig, success http.Handler) http.Handler
- func TokenFromContext(ctx context.Context) (*oauth2.Token, error)
- func WithState(ctx context.Context, state string) context.Context
- func WithToken(ctx context.Context, token *oauth2.Token) context.Context
Constants ¶
This section is empty.
Variables ¶
var (
ErrInvalidState = errors.New("oauth2: Invalid OAuth2 state parameter")
)
Errors which may occur on login.
Functions ¶
func CallbackHandler ¶
CallbackHandler handles OAuth2 redirection URI requests by parsing the auth code and state, comparing with the state value from the ctx, and obtaining an OAuth2 Token.
func LoginHandler ¶
LoginHandler handles OAuth2 login requests by reading the state value from the ctx and redirecting requests to the AuthURL with that state value.
func StateFromContext ¶
StateFromContext returns the state value from the ctx.
func StateHandler ¶
StateHandler checks for a state cookie. If found, the state value is read and added to the ctx. Otherwise, a non-guessable value is added to the ctx and to a (short-lived) state cookie issued to the requester.
Implements OAuth 2 RFC 6749 10.12 CSRF Protection. If you wish to issue state params differently, write a http.Handler which sets the ctx state, using oauth2 WithState(ctx, state) since it is required by LoginHandler and CallbackHandler.
func TokenFromContext ¶
TokenFromContext returns the Token from the ctx.
Types ¶
This section is empty.