Documentation ¶
Index ¶
- Variables
- func GetSDKAuthOptionFromProfile(profile *profiles.ProfileStore) (sdk.Option, error)
- func GetTokenWithClientCreds(ctx context.Context, endpoint string, clientId string, clientSecret string, ...) (*oauth2.Token, error)
- func GetTokenWithProfile(ctx context.Context, profile *profiles.ProfileStore) (*oauth2.Token, error)
- func Login(ctx context.Context, ...) (*oauth2.Token, error)
- func LoginWithPKCE(ctx context.Context, host, publicClientID string, tlsNoVerify bool) (*oauth2.Token, string, error)
- func RevokeAccessToken(ctx context.Context, endpoint, publicClientID, refreshToken string, ...) error
- func ValidateProfileAuthCredentials(ctx context.Context, profile *profiles.ProfileStore) error
- type ClientCredentials
- type JWTClaims
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrAccessTokenExpired = errors.New("access token expired") ErrAccessTokenNotFound = errors.New("no access token found") ErrClientCredentialsNotFound = errors.New("client credentials not found") ErrInvalidAuthType = errors.New("invalid auth type") ErrUnauthenticated = errors.New("not logged in") ErrParsingAccessToken = errors.New("failed to parse access token") )
View Source
var ( ErrProfileCredentialsNotFound = errors.New("profile missing credentials") ErrPlatformConfigNotFound = errors.New("platform configuration not found") )
Functions ¶
func GetSDKAuthOptionFromProfile ¶
func GetSDKAuthOptionFromProfile(profile *profiles.ProfileStore) (sdk.Option, error)
func GetTokenWithClientCreds ¶
func GetTokenWithClientCreds(ctx context.Context, endpoint string, clientId string, clientSecret string, tlsNoVerify bool) (*oauth2.Token, error)
Uses the OAuth2 client credentials flow to obtain a token.
func GetTokenWithProfile ¶
func Login ¶
func Login(ctx context.Context, platformEndpoint, tokenURL, authURL, publicClientID string) (*oauth2.Token, error)
Facilitates an auth code PKCE flow to obtain OIDC tokens. Spawns a local server to handle the callback and opens a browser window in each respective OS.
func LoginWithPKCE ¶
func LoginWithPKCE(ctx context.Context, host, publicClientID string, tlsNoVerify bool) (*oauth2.Token, string, error)
Logs in using the auth code PKCE flow driven by the platform well-known idP OIDC configuration.
func RevokeAccessToken ¶
func RevokeAccessToken(ctx context.Context, endpoint, publicClientID, refreshToken string, tlsNoVerify bool) error
Revokes the access token
func ValidateProfileAuthCredentials ¶
func ValidateProfileAuthCredentials(ctx context.Context, profile *profiles.ProfileStore) error
Types ¶
type ClientCredentials ¶
type ClientCredentials struct { ClientId string `json:"clientId"` ClientSecret string `json:"clientSecret"` }
func GetClientCredsFromFile ¶
func GetClientCredsFromFile(filepath string) (ClientCredentials, error)
Retrieves credentials by reading specified file
func GetClientCredsFromJSON ¶
func GetClientCredsFromJSON(credsJSON []byte) (ClientCredentials, error)
Parse the JSON and return the client ID and secret
Click to show internal directories.
Click to hide internal directories.