12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- package models
- import "time"
- // LdapServer LDAP 服务配置表
- type LdapServer struct {
- Id int `orm:"pk;auto" json:"id"`
- // 用户账号,唯一标识, Uid
- Uid string `orm:"size(100)" json:"uid"`
- Name string `orm:"size(255)" json:"name"`
- Key string `orm:"unique" json:"key"`
- Url string `json:"url"`
- Active bool `json:"active"` // 是否激活可用
- UserName string `json:"userName"` // 直接存储JSON数据,数组格式,多个
- Password string `json:"password"`
- BaseDN string `orm:"size(255);column(base_dn)" json:"baseDN"`
- Filter string `orm:"size(255)" json:"filter"`
- Remark string `json:"remark"`
- OrganizeClass string `orm:"size(255)" json:"organizeClass"` // 组织的objectClass
- }
- // LdapUser User 用户表
- // https://blog.csdn.net/wzjking0929/article/details/81153206
- type LdapUser struct {
- Id int `orm:"pk;auto" json:"id"`
- Uid string `json:"uid"`
- // 用户账号,唯一标识, Uid
- Account string `orm:"unique" json:"account"` // 即DN,eg. cn=test,dc=xxxx,dc=cn
- UserName string `json:"userName"`
- Mail string `json:"mail"`
- DN string `orm:"unique;column(db)" json:"dn"`
- Attributes string `orm:"null;type(text)" json:"attributes"` // 直接存储JSON数据,数组格式,多个
- SignType string `json:"signType"` // 密码加密方式
- Password string `json:"password"`
- Remark string `json:"remark"`
- ServerKey string `json:"serverKey"`
- LastSyncDate time.Time `orm:"null;type(datetime)" json:"lastSyncDate"` // 最后一次同步的时间
- Organize string `orm:"default('');type(text)" json:"organize"`
- }
- type LdapOrganize struct {
- Id int `orm:"pk;auto" json:"id"`
- ServerKey string `orm:"size(255)" json:"serverKey"`
- DN string `orm:"unique;column(dn)" json:"dn"`
- ObjectClass string `orm:"size(255)" json:"objectClass"`
- Name string `orm:"size(255)" json:"name"`
- Remark string `orm:"null;type(text)" json:"remark"`
- }
- func (s *LdapServer) UniqueClone() (*LdapServer, string) {
- return &LdapServer{
- Url: s.Url,
- }, "Url"
- }
- func (s *LdapUser) UniqueClone() (*LdapUser, string) {
- return &LdapUser{
- DN: s.DN,
- Account: s.Account,
- }, "DN"
- }
- func (s *LdapOrganize) UniqueClone() (*LdapOrganize, string) {
- return &LdapOrganize{
- DN: s.DN,
- }, "DN"
- }
|