Files
kubesphere/pkg/simple/client/ldap/interface.go
hongming 0e814bb5e4 add iam crd
Signed-off-by: hongming <talonwan@yunify.com>
2020-04-10 04:05:23 +08:00

24 lines
732 B
Go

package ldap
import (
iamv1alpha2 "kubesphere.io/kubesphere/pkg/apis/iam/v1alpha2"
)
// Interface defines CRUD behaviors of manipulating users
type Interface interface {
// Create create a new user in ldap
Create(user *iamv1alpha2.User) error
// Update updates a user information, return error if user not exists
Update(user *iamv1alpha2.User) error
// Delete deletes a user from ldap, return nil if user not exists
Delete(name string) error
// Get gets a user by its username from ldap, return ErrUserNotExists if user not exists
Get(name string) (*iamv1alpha2.User, error)
// Authenticate checks if (name, password) is valid, return ErrInvalidCredentials if not
Authenticate(name string, password string) error
}