diff options
Diffstat (limited to 'vendor/github.com/superseriousbusiness/oauth2/v4/server/config.go')
-rw-r--r-- | vendor/github.com/superseriousbusiness/oauth2/v4/server/config.go | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/vendor/github.com/superseriousbusiness/oauth2/v4/server/config.go b/vendor/github.com/superseriousbusiness/oauth2/v4/server/config.go new file mode 100644 index 000000000..f64de14d9 --- /dev/null +++ b/vendor/github.com/superseriousbusiness/oauth2/v4/server/config.go @@ -0,0 +1,50 @@ +package server + +import ( + "net/http" + "time" + + "github.com/superseriousbusiness/oauth2/v4" +) + +// Config configuration parameters +type Config struct { + TokenType string // token type + AllowGetAccessRequest bool // to allow GET requests for the token + AllowedResponseTypes []oauth2.ResponseType // allow the authorization type + AllowedGrantTypes []oauth2.GrantType // allow the grant type + AllowedCodeChallengeMethods []oauth2.CodeChallengeMethod + ForcePKCE bool +} + +// NewConfig create to configuration instance +func NewConfig() *Config { + return &Config{ + TokenType: "Bearer", + AllowedResponseTypes: []oauth2.ResponseType{oauth2.Code, oauth2.Token}, + AllowedGrantTypes: []oauth2.GrantType{ + oauth2.AuthorizationCode, + oauth2.PasswordCredentials, + oauth2.ClientCredentials, + oauth2.Refreshing, + }, + AllowedCodeChallengeMethods: []oauth2.CodeChallengeMethod{ + oauth2.CodeChallengePlain, + oauth2.CodeChallengeS256, + }, + } +} + +// AuthorizeRequest authorization request +type AuthorizeRequest struct { + ResponseType oauth2.ResponseType + ClientID string + Scope string + RedirectURI string + State string + UserID string + CodeChallenge string + CodeChallengeMethod oauth2.CodeChallengeMethod + AccessTokenExp time.Duration + Request *http.Request +} |