Documentation
¶
Index ¶
- type BaseOAuthProvider
- func (p *BaseOAuthProvider) ExchangeCode(ctx context.Context, code string) (*oauth2.Token, error)
- func (p *BaseOAuthProvider) GetAuthURL(state string) string
- func (p *BaseOAuthProvider) GetName() string
- func (p *BaseOAuthProvider) GetProtocol() string
- func (p *BaseOAuthProvider) GetProviderConfig() *config.SSOProviderConfig
- func (p *BaseOAuthProvider) GetUserInfo(ctx context.Context, token *oauth2.Token) (*types.UserInfo, error)
- type BaseOIDCProvider
- func (p *BaseOIDCProvider) ExchangeCode(ctx context.Context, code string) (*oauth2.Token, error)
- func (p *BaseOIDCProvider) GetAuthURL(state string) string
- func (p *BaseOIDCProvider) GetName() string
- func (p *BaseOIDCProvider) GetProtocol() string
- func (p *BaseOIDCProvider) GetProviderConfig() *config.SSOProviderConfig
- func (p *BaseOIDCProvider) GetUserInfo(ctx context.Context, token *oauth2.Token) (*types.UserInfo, error)
- type GitHubOAuthProvider
- type GoogleOIDCProvider
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BaseOAuthProvider ¶
type BaseOAuthProvider struct {
// contains filtered or unexported fields
}
BaseOAuthProvider implements a generic OAuth2 provider
func NewBaseOAuthProvider ¶
func NewBaseOAuthProvider(cfg *config.SSOProviderConfig, callbackURL string, logger *zap.SugaredLogger) (*BaseOAuthProvider, error)
NewBaseOAuthProvider creates a new generic OAuth2 provider
func (*BaseOAuthProvider) ExchangeCode ¶
func (*BaseOAuthProvider) GetAuthURL ¶
func (p *BaseOAuthProvider) GetAuthURL(state string) string
func (*BaseOAuthProvider) GetName ¶
func (p *BaseOAuthProvider) GetName() string
func (*BaseOAuthProvider) GetProtocol ¶
func (p *BaseOAuthProvider) GetProtocol() string
func (*BaseOAuthProvider) GetProviderConfig ¶
func (p *BaseOAuthProvider) GetProviderConfig() *config.SSOProviderConfig
func (*BaseOAuthProvider) GetUserInfo ¶
type BaseOIDCProvider ¶
type BaseOIDCProvider struct {
// contains filtered or unexported fields
}
BaseOIDCProvider implements a generic OIDC provider
func NewBaseOIDCProvider ¶
func NewBaseOIDCProvider(ctx context.Context, cfg *config.SSOProviderConfig, callbackURL string, logger *zap.SugaredLogger) (*BaseOIDCProvider, error)
NewBaseOIDCProvider creates a new generic OIDC provider
func (*BaseOIDCProvider) ExchangeCode ¶
func (*BaseOIDCProvider) GetAuthURL ¶
func (p *BaseOIDCProvider) GetAuthURL(state string) string
func (*BaseOIDCProvider) GetName ¶
func (p *BaseOIDCProvider) GetName() string
func (*BaseOIDCProvider) GetProtocol ¶
func (p *BaseOIDCProvider) GetProtocol() string
func (*BaseOIDCProvider) GetProviderConfig ¶
func (p *BaseOIDCProvider) GetProviderConfig() *config.SSOProviderConfig
func (*BaseOIDCProvider) GetUserInfo ¶
type GitHubOAuthProvider ¶
type GitHubOAuthProvider struct {
*BaseOAuthProvider
}
GitHubOAuthProvider extends BaseOAuthProvider with GitHub-specific functionality
func NewGitHubOAuthProvider ¶
func NewGitHubOAuthProvider(cfg *config.SSOProviderConfig, callbackURL string, logger *zap.SugaredLogger) (*GitHubOAuthProvider, error)
NewGitHubOAuthProvider creates a new GitHub OAuth provider
func (*GitHubOAuthProvider) GetUserInfo ¶
func (p *GitHubOAuthProvider) GetUserInfo(ctx context.Context, token *oauth2.Token) (*types.UserInfo, error)
GetUserInfo extends the base implementation with GitHub-specific group fetching
type GoogleOIDCProvider ¶
type GoogleOIDCProvider struct {
*BaseOIDCProvider
// contains filtered or unexported fields
}
GoogleOIDCProvider extends BaseOIDCProvider with Google-specific functionality
func NewGoogleOIDCProvider ¶
func NewGoogleOIDCProvider(ctx context.Context, cfg *config.SSOProviderConfig, callbackURL string, logger *zap.SugaredLogger) (*GoogleOIDCProvider, error)
NewGoogleOIDCProvider creates a new Google OIDC provider
func (*GoogleOIDCProvider) GetUserInfo ¶
func (p *GoogleOIDCProvider) GetUserInfo(ctx context.Context, token *oauth2.Token) (*types.UserInfo, error)
GetUserInfo extends the base implementation with Google-specific group fetching