idp

package
v0.7.1 Latest Latest
Warning

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

Go to latest
Published: Sep 19, 2023 License: MPL-2.0 Imports: 1 Imported by: 2

Documentation

Overview

Package idp contains an interface and drivers for interacting with various identity providers that Fensak uses.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Service

type Service interface {
	// RemoveUser will remove a user from the identity provider so that the user can no longer access the service.
	RemoveUser(ctx context.Context, userID string) error

	// AddUser will create a new user on the identity provider. This should return the associated external ID in the
	// identity provider.
	AddUser(ctx context.Context, profile UserProfile) (string, error)

	// UpdateUser will update the user profile information in the identity provider.
	UpdateUser(ctx context.Context, profile UserProfile) error

	// GetLogoutURL will return the session logout URL for the IdP.
	GetLogoutURL(ctx context.Context) (string, error)

	// ResendInviteEmail will resend the invite email for the user from the IdP. This is useful if the activation link is
	// expired on the IdP.
	ResendInviteEmail(ctx context.Context, userID string) error
}

Service represents the identity provider.

type UserProfile

type UserProfile interface {
	// GetID should return the object ID of the user to uniquely identify the user on the identity provider.
	GetID() string

	// GetFirstName should return the first name of the user.
	GetFirstName() string

	// GetLastName should return the last name of the user.
	GetLastName() string

	// GetPrimaryEmailAddress should return the primary email address of the user.
	GetPrimaryEmailAddress() string
}

UserProfile represents the profile information of a user.

Directories

Path Synopsis
nopidp module
zitadel module

Jump to

Keyboard shortcuts

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