github.com/vnforks/kid/v5@v5.22.1-0.20200408055009-b89d99c65676/einterfaces/ldap.go (about)

     1  // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
     2  // See LICENSE.txt for license information.
     3  
     4  package einterfaces
     5  
     6  import (
     7  	"github.com/vnforks/kid/v5/model"
     8  )
     9  
    10  type LdapInterface interface {
    11  	DoLogin(id string, password string) (*model.User, *model.AppError)
    12  	GetUser(id string) (*model.User, *model.AppError)
    13  	GetUserAttributes(id string, attributes []string) (map[string]string, *model.AppError)
    14  	CheckPassword(id string, password string) *model.AppError
    15  	CheckPasswordAuthData(authData string, password string) *model.AppError
    16  	SwitchToLdap(userId, ldapId, ldapPassword string) *model.AppError
    17  	StartSynchronizeJob(waitForJobToFinish bool) (*model.Job, *model.AppError)
    18  	RunTest() *model.AppError
    19  	GetAllLdapUsers() ([]*model.User, *model.AppError)
    20  	MigrateIDAttribute(toAttribute string) error
    21  	FirstLoginSync(userID, userAuthService, userAuthData, email string) *model.AppError
    22  }