auth

package
v1.34.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 25, 2024 License: Apache-2.0 Imports: 4 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Auth added in v0.6.0

type Auth struct {
	// contains filtered or unexported fields
}

Auth is a auth client instance.

func New

func New(api restapi.Connector) *Auth

New creates a new auth client instance, using the argument SDK API client.

func (*Auth) AuthStatus added in v0.6.0

func (store *Auth) AuthStatus() (*common.ServiceStatus, error)

AuthStatus get microservice status

func (*Auth) CreateIdpClient added in v1.26.0

func (store *Auth) CreateIdpClient(idpClient *IDPClient) (IDstruct, error)

CreateIdpClient creates a new identity provider client configuration.

func (*Auth) DeleteIdpClient added in v1.26.0

func (store *Auth) DeleteIdpClient(idpID string) error

DeleteIdpClient delete identity provider client configuration by ID.

func (*Auth) GetUserPairedDevices added in v1.32.0

func (store *Auth) GetUserPairedDevices(userID string) (*PairedDevices, error)

func (*Auth) IdpClient added in v1.26.0

func (store *Auth) IdpClient(idpID string) (*IDPClient, error)

IdpClient fetches existing identity provider client configuration.

func (*Auth) Logout added in v1.29.0

func (store *Auth) Logout() error

Logout logs out user.

func (*Auth) RegenerateIdpClientConfig added in v1.26.0

func (store *Auth) RegenerateIdpClientConfig(idpID string) (*IdpClientConfig, error)

RegenerateIdpClientConfig regenerates client_id and client_secret for OIDC identity provider client configuration.

func (*Auth) SearchSessions added in v1.29.0

func (store *Auth) SearchSessions(offset, limit int, sortkey, sortdir string, search *SearchParams) (*sessionsResult, error)

SearchSessions searches for sessions

func (*Auth) SourceSessions added in v1.29.0

func (store *Auth) SourceSessions(offset, limit int, sortkey, sortdir, sourceID string) (*sessionsResult, error)

SourceSessions fetches valid sessions by sourceID.

func (*Auth) TerminateSession added in v1.29.0

func (store *Auth) TerminateSession(sessionID string) error

TerminateSession terminates single session by ID.

func (*Auth) TerminateUserSessions added in v1.29.0

func (store *Auth) TerminateUserSessions(userID string) error

TerminateUserSessions terminates all sessions for a user.

func (*Auth) UnpairUserDevice added in v1.32.0

func (store *Auth) UnpairUserDevice(userID, deviceID string) error

func (*Auth) UpdateIdpClient added in v1.26.0

func (store *Auth) UpdateIdpClient(idpClient *IDPClient, idpID string) error

UpdateIdpClient updates existing identity provider client configuration definition.

func (*Auth) UserSessions added in v1.29.0

func (store *Auth) UserSessions(offset, limit int, sortkey, sortdir, userID string) (*sessionsResult, error)

UserSessions fetches valid sessions by userID.

type Device added in v1.32.0

type Device struct {
	ID        string `json:"id"`
	OS        string `json:"os"`
	Name      string `json:"name"`
	Activated string `json:"activated"`
	Updated   string `json:"updated"`
	LastUsed  string `json:"lastUsed"`
}

type IDPClient added in v1.26.0

type IDPClient struct {
	ID                             string            `json:"id"`
	Name                           string            `json:"name"`
	Created                        time.Time         `json:"created,omitempty"`
	Updated                        time.Time         `json:"updated,omitempty"`
	IDPType                        string            `json:"idp_type"`
	OIDCIssuer                     string            `json:"oidc_issuer,omitempty"`
	OIDCAudience                   []string          `json:"oidc_audience"`
	OIDCClientID                   string            `json:"oidc_client_id,omitempty"`
	OIDCClientSecret               string            `json:"oidc_client_secret,omitempty"`
	OIDCScopesEnabled              []string          `json:"oidc_scopes_enabled"`
	OIDCResponseTypesSupported     []string          `json:"oidc_response_types_supported,omitempty"`
	OIDCGrantTypesSupported        []string          `json:"oidc_grant_types_supported,omitempty"`
	OIDCEnablePKCE                 bool              `json:"oidc_code_challenge_method_enabled,omitempty"`
	OIDCEnabledAuthMethod          string            `json:"oidc_auth_method_enabled,omitempty"`
	OIDCAuthMethodPost             bool              `json:"oidc_auth_method_post,omitempty"`
	OIDCGrantTypeRefreshToken      bool              `json:"oidc_grant_type_refresh_token,omitempty"`
	OIDCAllowedRedirectURIs        []string          `json:"oidc_allowed_redirect_uris,omitempty"`
	OIDCDefaultLogoutRedirectURI   string            `json:"oidc_default_logout_redirect_uri,omitempty"`
	OIDCAllowedLogoutRedirectURIs  []string          `json:"oidc_allowed_logout_redirect_uris,omitempty"`
	OIDCAttributeMapping           map[string]string `json:"oidc_attribute_mapping,omitempty"`
	OIDCSignatureAlgorithm         string            `json:"oidc_signature_algorithm,omitempty"`
	OIDCAccessTokenValidInMinutes  int               `json:"oidc_access_token_valid_in_minutes,omitempty"`
	OIDCRefreshTokenValidInMinutes int               `json:"oidc_refresh_token_valid_in_minutes,omitempty"`
	UserFilter                     string            `json:"user_filter,omitempty"`
	Enabled                        bool              `json:"enabled"`
}

IDPClient idp client definition

type IDPClientsResult added in v1.26.0

type IDPClientsResult struct {
	Count int         `json:"count"`
	Items []IDPClient `json:"items"`
}

IDPClientsResult idp client list result definition

type IDstruct added in v1.26.0

type IDstruct struct {
	ID string `json:"id"`
}

type IdpClientConfig added in v1.26.0

type IdpClientConfig struct {
	ClientId     string `json:"client_id"`
	ClientSecret string `json:"client_secret"`
}

IdpClientConfig config definition with client_id and client_secret

type PairedDevices added in v1.32.0

type PairedDevices struct {
	Count int      `json:"count"`
	Items []Device `json:"items"`
}

type Params added in v1.29.0

type Params struct {
	Sortkey string `json:"sortkey,omitempty"`
	Sortdir string `json:"sortdir,omitempty"`
	Offset  int    `json:"offset,omitempty"`
	Limit   int    `json:"limit,omitempty"`
}

Params query params definition

type SearchParams added in v1.29.0

type SearchParams struct {
	Keywords string `json:"keywords,omitempty"`
	UserID   string `json:"user_id,omitempty"`
	Type     string `json:"type,omitempty"`
}

SearchParams search params definition

type Session added in v1.29.0

type Session struct {
	ID           string    `json:"id"`
	UserID       string    `json:"user_id"`
	SourceID     string    `json:"source_id"`
	Domain       string    `json:"domain"`
	Username     string    `json:"username"`
	RemoteAddr   string    `json:"remote_addr"`
	UserAgent    string    `json:"user_agent"`
	Type         string    `json:"type"`
	Created      time.Time `json:"created"`
	Updated      time.Time `json:"updated"`
	Expires      time.Time `json:"expires"`
	TokenExpires time.Time `json:"token_expires"`
	LoggedOut    bool      `json:"logged_out"`
	Current      bool      `json:"current,omitempty"`
}

type SessionPasswordPolicy added in v1.32.0

type SessionPasswordPolicy struct {
	PasswordMinLength    int    `json:"password_min_length"`
	PasswordMaxLength    int    `json:"password_max_length"`
	UseSpecialCharacters bool   `json:"use_special_characters"`
	UseLowercase         bool   `json:"use_lower_case"`
	UseUppercase         bool   `json:"use_upper_case"`
	UseNumbers           bool   `json:"use_numbers"`
	PasswordEntropy      int    `json:"password_entropy,omitempty"`
	PasswordStrength     string `json:"password_strength,omitempty"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL