package ldap_lib import ( "github.com/go-ldap/ldap/v3" ) type LdapGroup struct { conn *ldap.Conn } func NewLdapGroup(conn *ldap.Conn) *LdapGroup { return &LdapGroup{conn} } // 更新分组信息 func (l *LdapGroup) UpdateGroup(groupDN string, attr map[string][]string) error { modify := ldap.NewModifyRequest(groupDN, nil) for key, v := range attr { modify.Replace(key, v) } return l.conn.Modify(modify) } // 删除分组 func (l *LdapGroup) DeleteGroup(groupDN string) error { del := ldap.NewDelRequest(groupDN, nil) return l.conn.Del(del) } // 创建分组 func (l *LdapGroup) CreateGroup(groupDN string, attr map[string][]string) error { add := ldap.NewAddRequest(groupDN, nil) for key, v := range attr { add.Attribute(key, v) } return l.conn.Add(add) }