* fix(outpost/ldap): missing user object classes * add "person" object class * update user object classes * update boolean strings to upper for being compliant tags: WIP-LDAP-Outpost-Windows-ADSI-Support * feat(outpost/ldap): add subschema attributes * add supported capability OIDs for Windows * add relevant supported ldap control OIDs tags: WIP-LDAP-Outpost-Windows-ADSI-Support * feat(outpost/ldap): update schema for windows Compatibility * add relevant dITContentRules for authentik * add all existing attribute types for Windows/Unix/Linux * add missing object classes definitions * update classes definitions for being compliant with LDAP schema * update attributes orders tags: WIP-LDAP-Outpost-Windows-ADSI-Support * feat(outpost/ldap): refine LDAP attribute types * remove unsused attribute types * order attribute types tags: WIP-LDAP-Outpost-Windows-ADSI-Support
		
			
				
	
	
		
			86 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			86 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
package constants
 | 
						|
 | 
						|
const OC = "objectClass"
 | 
						|
 | 
						|
const (
 | 
						|
	OCTop         = "top"
 | 
						|
	OCDomain      = "domain"
 | 
						|
	OCNSContainer = "nsContainer"
 | 
						|
	OCSubSchema   = "subschema"
 | 
						|
)
 | 
						|
 | 
						|
const (
 | 
						|
	SearchAttributeNone           = "1.1"
 | 
						|
	SearchAttributeAllUser        = "*"
 | 
						|
	SearchAttributeAllOperational = "+"
 | 
						|
)
 | 
						|
 | 
						|
const (
 | 
						|
	OCGroup              = "group"
 | 
						|
	OCGroupOfUniqueNames = "groupOfUniqueNames"
 | 
						|
	OCGroupOfNames       = "groupOfNames"
 | 
						|
	OCAKGroup            = "goauthentik.io/ldap/group"
 | 
						|
	OCAKVirtualGroup     = "goauthentik.io/ldap/virtual-group"
 | 
						|
	OCPosixGroup         = "posixGroup"
 | 
						|
)
 | 
						|
 | 
						|
const (
 | 
						|
	OCPerson        = "person"
 | 
						|
	OCUser          = "user"
 | 
						|
	OCOrgPerson     = "organizationalPerson"
 | 
						|
	OCInetOrgPerson = "inetOrgPerson"
 | 
						|
	OCAKUser        = "goauthentik.io/ldap/user"
 | 
						|
	OCPosixAccount  = "posixAccount"
 | 
						|
)
 | 
						|
 | 
						|
const (
 | 
						|
	OUUsers         = "users"
 | 
						|
	OUGroups        = "groups"
 | 
						|
	OUVirtualGroups = "virtual-groups"
 | 
						|
)
 | 
						|
 | 
						|
func GetDomainOCs() map[string]bool {
 | 
						|
	return map[string]bool{
 | 
						|
		OCTop:    true,
 | 
						|
		OCDomain: true,
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
func GetContainerOCs() map[string]bool {
 | 
						|
	return map[string]bool{
 | 
						|
		OCTop:         true,
 | 
						|
		OCNSContainer: true,
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
func GetUserOCs() map[string]bool {
 | 
						|
	return map[string]bool{
 | 
						|
		OCTop:           true,
 | 
						|
		OCPerson:        true,
 | 
						|
		OCUser:          true,
 | 
						|
		OCOrgPerson:     true,
 | 
						|
		OCInetOrgPerson: true,
 | 
						|
		OCAKUser:        true,
 | 
						|
		OCPosixAccount:  true,
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
func GetGroupOCs() map[string]bool {
 | 
						|
	return map[string]bool{
 | 
						|
		OCGroup:              true,
 | 
						|
		OCGroupOfUniqueNames: true,
 | 
						|
		OCGroupOfNames:       true,
 | 
						|
		OCAKGroup:            true,
 | 
						|
		OCPosixGroup:         true,
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
func GetVirtualGroupOCs() map[string]bool {
 | 
						|
	return map[string]bool{
 | 
						|
		OCGroup:              true,
 | 
						|
		OCGroupOfUniqueNames: true,
 | 
						|
		OCGroupOfNames:       true,
 | 
						|
		OCAKVirtualGroup:     true,
 | 
						|
	}
 | 
						|
}
 |