opaal/internal/oidc/oidc.go

28 lines
722 B
Go

package oidc
type OpenIDConnectProvider struct {
Host string
AuthorizeEndpoint string
TokenEndpoint string
ConfigEndpoint string
}
func NewOIDCProvider() *OpenIDConnectProvider {
return &OpenIDConnectProvider{
Host: "https://gitlab.newmexicoconsortium.org",
AuthorizeEndpoint: "/oauth/authorize",
TokenEndpoint: "/oauth/token",
}
}
func (oidc *OpenIDConnectProvider) GetAuthorizeUrl() string {
return oidc.Host + oidc.AuthorizeEndpoint
}
func (oidc *OpenIDConnectProvider) GetTokenUrl() string {
return oidc.Host + oidc.TokenEndpoint
}
func (oidc *OpenIDConnectProvider) FetchServerConfiguration(url string) {
// make a request to a server's openid-configuration
}