Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // ErrWrongWorkspace is returned when the user's workspace doesn't match the expected one. ErrWrongWorkspace = errors.New("wrong workspace") // ErrUnexpectedStatus is returned when the HTTP response has a non-200 status code. ErrUnexpectedStatus = errors.New("unexpected status") // ErrSlackAPI is returned when the Slack API returns an error. ErrSlackAPI = errors.New("slack error") )
Functions ¶
This section is empty.
Types ¶
type Provider ¶
type Provider struct {
// Allow overriding URLs for testing.
TokenURL string
UserInfoURL string
// contains filtered or unexported fields
}
Provider implements auth.OAuthProvider for Slack OpenID Connect.
func NewProvider ¶
NewProvider creates a new Slack OIDC provider.
func (*Provider) AuthorizeURL ¶
AuthorizeURL builds the Slack OIDC authorization URL.
func (*Provider) ExchangeCode ¶
func (p *Provider) ExchangeCode(ctx context.Context, code, redirectURI string) (*auth.OAuthUser, error)
ExchangeCode exchanges an authorization code for user info. It calls the token endpoint, then the userinfo endpoint, checks team restrictions, and returns a normalized OAuthUser.
Click to show internal directories.
Click to hide internal directories.