@@ -216,7 +216,7 @@ func (l *ldapInterfaceImpl) Get(name string) (*iam.User, error) {
|
||||
userEntry := searchResults.Entries[0]
|
||||
|
||||
user := &iam.User{
|
||||
Username: userEntry.GetAttributeValue(ldapAttributeUserID),
|
||||
Name: userEntry.GetAttributeValue(ldapAttributeUserID),
|
||||
Email: userEntry.GetAttributeValue(ldapAttributeMail),
|
||||
Lang: userEntry.GetAttributeValue(ldapAttributePreferredLanguage),
|
||||
Description: userEntry.GetAttributeValue(ldapAttributeDescription),
|
||||
@@ -229,12 +229,12 @@ func (l *ldapInterfaceImpl) Get(name string) (*iam.User, error) {
|
||||
}
|
||||
|
||||
func (l *ldapInterfaceImpl) Create(user *iam.User) error {
|
||||
if _, err := l.Get(user.Username); err != nil {
|
||||
if _, err := l.Get(user.Name); err != nil {
|
||||
return ErrUserAlreadyExisted
|
||||
}
|
||||
|
||||
createRequest := &ldap.AddRequest{
|
||||
DN: l.dnForUsername(user.Username),
|
||||
DN: l.dnForUsername(user.Name),
|
||||
Attributes: []ldap.Attribute{
|
||||
{
|
||||
Type: ldapAttributeObjectClass,
|
||||
@@ -242,7 +242,7 @@ func (l *ldapInterfaceImpl) Create(user *iam.User) error {
|
||||
},
|
||||
{
|
||||
Type: ldapAttributeCommonName,
|
||||
Vals: []string{user.Username},
|
||||
Vals: []string{user.Name},
|
||||
},
|
||||
{
|
||||
Type: ldapAttributeSerialNumber,
|
||||
@@ -254,11 +254,11 @@ func (l *ldapInterfaceImpl) Create(user *iam.User) error {
|
||||
},
|
||||
{
|
||||
Type: ldapAttributeHomeDirectory,
|
||||
Vals: []string{"/home/" + user.Username},
|
||||
Vals: []string{"/home/" + user.Name},
|
||||
},
|
||||
{
|
||||
Type: ldapAttributeUserID,
|
||||
Vals: []string{user.Username},
|
||||
Vals: []string{user.Name},
|
||||
},
|
||||
{
|
||||
Type: ldapAttributeUserIDNumber,
|
||||
@@ -322,13 +322,13 @@ func (l *ldapInterfaceImpl) Update(newUser *iam.User) error {
|
||||
defer conn.Close()
|
||||
|
||||
// check user existed
|
||||
_, err = l.Get(newUser.Username)
|
||||
_, err = l.Get(newUser.Name)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
modifyRequest := &ldap.ModifyRequest{
|
||||
DN: l.dnForUsername(newUser.Username),
|
||||
DN: l.dnForUsername(newUser.Name),
|
||||
}
|
||||
|
||||
if newUser.Description != "" {
|
||||
|
||||
@@ -17,7 +17,7 @@ func NewSimpleLdap() Interface {
|
||||
|
||||
// initialize with a admin user
|
||||
admin := &iam.User{
|
||||
Username: "admin",
|
||||
Name: "admin",
|
||||
Email: "admin@kubesphere.io",
|
||||
Lang: "eng",
|
||||
Description: "administrator",
|
||||
@@ -25,21 +25,21 @@ func NewSimpleLdap() Interface {
|
||||
Groups: nil,
|
||||
Password: "P@88w0rd",
|
||||
}
|
||||
sl.store[admin.Username] = admin
|
||||
sl.store[admin.Name] = admin
|
||||
return sl
|
||||
}
|
||||
|
||||
func (s simpleLdap) Create(user *iam.User) error {
|
||||
s.store[user.Username] = user
|
||||
s.store[user.Name] = user
|
||||
return nil
|
||||
}
|
||||
|
||||
func (s simpleLdap) Update(user *iam.User) error {
|
||||
_, err := s.Get(user.Username)
|
||||
_, err := s.Get(user.Name)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
s.store[user.Username] = user
|
||||
s.store[user.Name] = user
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ func TestSimpleLdap(t *testing.T) {
|
||||
ldapClient := NewSimpleLdap()
|
||||
|
||||
foo := &iam.User{
|
||||
Username: "jerry",
|
||||
Name: "jerry",
|
||||
Email: "jerry@kubesphere.io",
|
||||
Lang: "en",
|
||||
Description: "Jerry is kind and gentle.",
|
||||
@@ -27,7 +27,7 @@ func TestSimpleLdap(t *testing.T) {
|
||||
}
|
||||
|
||||
// check if user really created
|
||||
user, err := ldapClient.Get(foo.Username)
|
||||
user, err := ldapClient.Get(foo.Name)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@@ -35,7 +35,7 @@ func TestSimpleLdap(t *testing.T) {
|
||||
t.Fatalf("%T differ (-got, +want): %s", user, diff)
|
||||
}
|
||||
|
||||
_ = ldapClient.Delete(foo.Username)
|
||||
_ = ldapClient.Delete(foo.Name)
|
||||
})
|
||||
|
||||
t.Run("should update user", func(t *testing.T) {
|
||||
@@ -51,7 +51,7 @@ func TestSimpleLdap(t *testing.T) {
|
||||
}
|
||||
|
||||
// check if user really created
|
||||
user, err := ldapClient.Get(foo.Username)
|
||||
user, err := ldapClient.Get(foo.Name)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@@ -59,7 +59,7 @@ func TestSimpleLdap(t *testing.T) {
|
||||
t.Fatalf("%T differ (-got, +want): %s", user, diff)
|
||||
}
|
||||
|
||||
_ = ldapClient.Delete(foo.Username)
|
||||
_ = ldapClient.Delete(foo.Name)
|
||||
})
|
||||
|
||||
t.Run("should delete user", func(t *testing.T) {
|
||||
@@ -68,12 +68,12 @@ func TestSimpleLdap(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
err = ldapClient.Delete(foo.Username)
|
||||
err = ldapClient.Delete(foo.Name)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
_, err = ldapClient.Get(foo.Username)
|
||||
_, err = ldapClient.Get(foo.Name)
|
||||
if err == nil || err != ErrUserNotExists {
|
||||
t.Fatalf("expected ErrUserNotExists error, got %v", err)
|
||||
}
|
||||
@@ -85,12 +85,12 @@ func TestSimpleLdap(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
err = ldapClient.Verify(foo.Username, foo.Password)
|
||||
err = ldapClient.Verify(foo.Name, foo.Password)
|
||||
if err != nil {
|
||||
t.Fatalf("should pass but got an error %v", err)
|
||||
}
|
||||
|
||||
err = ldapClient.Verify(foo.Username, "gibberish")
|
||||
err = ldapClient.Verify(foo.Name, "gibberish")
|
||||
if err == nil || err != ErrInvalidCredentials {
|
||||
t.Fatalf("expected error ErrInvalidCrenentials but got %v", err)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user