(feat) baseDN now accept dynamic domain values (fixes #3685)
This commit is contained in:
parent
ceaa122a7d
commit
d9943e559f
|
@ -972,7 +972,11 @@ a replacement for the hostname part in the URI provided by the
|
||||||
_SOGoSieveServer_ parameter.
|
_SOGoSieveServer_ parameter.
|
||||||
|
|
||||||
|baseDN
|
|baseDN
|
||||||
|The base DN of your user entries.
|
|The base DN of your user entries. You can use `%d` in this value if you
|
||||||
|
want the base DN to be built dynamically from the user's domain during
|
||||||
|
the login process. If you use that, you might always enable bindAsCurrentUser.
|
||||||
|
|
||||||
|
For example: `baseDN = "ou=%d,ou=domains,dc=example,dc=com";`
|
||||||
|
|
||||||
|KindFieldName (optional)
|
|KindFieldName (optional)
|
||||||
|If set, SOGo will try to determine if the value of the field
|
|If set, SOGo will try to determine if the value of the field
|
||||||
|
|
1
NEWS
1
NEWS
|
@ -3,6 +3,7 @@
|
||||||
|
|
||||||
Enhancements
|
Enhancements
|
||||||
- [web] create card from sender or recipient address (#3002, #4610)
|
- [web] create card from sender or recipient address (#3002, #4610)
|
||||||
|
- [core] baseDN now accept dynamic domain values (#3685)
|
||||||
|
|
||||||
Bug fixes
|
Bug fixes
|
||||||
- [web] fixed all-day event dates with different timezone
|
- [web] fixed all-day event dates with different timezone
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* LDAPSource.h - this file is part of SOGo
|
/* LDAPSource.h - this file is part of SOGo
|
||||||
*
|
*
|
||||||
* Copyright (C) 2007-2015 Inverse inc.
|
* Copyright (C) 2007-2019 Inverse inc.
|
||||||
*
|
*
|
||||||
* This file is free software; you can redistribute it and/or modify
|
* This file is free software; you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
@ -21,7 +21,6 @@
|
||||||
#ifndef LDAPSOURCE_H
|
#ifndef LDAPSOURCE_H
|
||||||
#define LDAPSOURCE_H
|
#define LDAPSOURCE_H
|
||||||
|
|
||||||
|
|
||||||
#include "SOGoSource.h"
|
#include "SOGoSource.h"
|
||||||
|
|
||||||
@class LDAPSourceSchema;
|
@class LDAPSourceSchema;
|
||||||
|
@ -33,61 +32,61 @@
|
||||||
|
|
||||||
@interface LDAPSource : NSObject <SOGoDNSource>
|
@interface LDAPSource : NSObject <SOGoDNSource>
|
||||||
{
|
{
|
||||||
int queryLimit;
|
int _queryLimit;
|
||||||
int queryTimeout;
|
int _queryTimeout;
|
||||||
|
|
||||||
NSString *sourceID;
|
NSString *_sourceID;
|
||||||
NSString *displayName;
|
NSString *_displayName;
|
||||||
|
|
||||||
NSString *bindDN; // The bindDN/password could be either the source's one
|
NSString *_bindDN; // The bindDN/password could be either the source's one
|
||||||
NSString *password; // or the current user if _bindAsCurrentUser is set to YES
|
NSString *_password; // or the current user if _bindAsCurrentUser is set to YES
|
||||||
NSString *sourceBindDN; // while sourceBindDN/sourceBindPassword always belong to the source
|
NSString *_sourceBindDN; // while sourceBindDN/sourceBindPassword always belong to the source
|
||||||
NSString *sourceBindPassword;
|
NSString *_sourceBindPassword;
|
||||||
NSString *hostname;
|
NSString *_hostname;
|
||||||
unsigned int port;
|
unsigned int _port;
|
||||||
NSString *encryption;
|
NSString *_encryption;
|
||||||
NSString *_filter;
|
NSString *_filter;
|
||||||
BOOL _bindAsCurrentUser;
|
BOOL _bindAsCurrentUser;
|
||||||
NSString *_scope;
|
NSString *_scope;
|
||||||
NSString *_userPasswordAlgorithm;
|
NSString *_userPasswordAlgorithm;
|
||||||
|
|
||||||
NSString *baseDN;
|
NSString *_baseDN;
|
||||||
LDAPSourceSchema *schema;
|
LDAPSourceSchema *_schema;
|
||||||
NSString *IDField; // the first part of a user DN
|
NSString *_IDField; // the first part of a user DN
|
||||||
NSString *CNField;
|
NSString *_CNField;
|
||||||
NSString *UIDField;
|
NSString *_UIDField;
|
||||||
NSArray *mailFields;
|
NSArray *_mailFields;
|
||||||
NSArray *searchFields;
|
NSArray *_searchFields;
|
||||||
NSString *IMAPHostField;
|
NSString *_IMAPHostField;
|
||||||
NSString *IMAPLoginField;
|
NSString *_IMAPLoginField;
|
||||||
NSString *SieveHostField;
|
NSString *_SieveHostField;
|
||||||
NSArray *bindFields;
|
NSArray *_bindFields;
|
||||||
|
|
||||||
BOOL listRequiresDot;
|
BOOL _listRequiresDot;
|
||||||
|
|
||||||
NSString *domain;
|
NSString *_domain;
|
||||||
NSString *contactInfoAttribute;
|
NSString *_contactInfoAttribute;
|
||||||
|
|
||||||
NSDictionary *contactMapping;
|
NSDictionary *_contactMapping;
|
||||||
NSArray *contactObjectClasses;
|
NSArray *_contactObjectClasses;
|
||||||
NSArray *groupObjectClasses;
|
NSArray *_groupObjectClasses;
|
||||||
|
|
||||||
NSDictionary *modulesConstraints;
|
NSDictionary *_modulesConstraints;
|
||||||
|
|
||||||
BOOL passwordPolicy;
|
BOOL _passwordPolicy;
|
||||||
BOOL updateSambaNTLMPasswords;
|
BOOL _updateSambaNTLMPasswords;
|
||||||
|
|
||||||
/* resources handling */
|
/* resources handling */
|
||||||
NSString *kindField;
|
NSString *_kindField;
|
||||||
NSString *multipleBookingsField;
|
NSString *_multipleBookingsField;
|
||||||
|
|
||||||
NSString *MSExchangeHostname;
|
NSString *_MSExchangeHostname;
|
||||||
|
|
||||||
/* user addressbooks */
|
/* user addressbooks */
|
||||||
NSString *abOU;
|
NSString *_abOU;
|
||||||
|
|
||||||
/* ACL */
|
/* ACL */
|
||||||
NSArray *modifiers;
|
NSArray *_modifiers;
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void) setBindDN: (NSString *) newBindDN
|
- (void) setBindDN: (NSString *) newBindDN
|
||||||
|
@ -113,13 +112,13 @@ andMultipleBookingsField: (NSString *) newMultipleBookingsField;
|
||||||
|
|
||||||
/* This enable the convertion of a contact entry with inetOrgPerson and mozillaAbPerson
|
/* This enable the convertion of a contact entry with inetOrgPerson and mozillaAbPerson
|
||||||
to and from an LDAP record */
|
to and from an LDAP record */
|
||||||
- (void) setContactMapping: (NSDictionary *) newMapping
|
- (void) setContactMapping: (NSDictionary *) theMapping
|
||||||
andObjectClasses: (NSArray *) newObjectClasses;
|
andObjectClasses: (NSArray *) theObjectClasses;
|
||||||
|
|
||||||
- (NGLdapEntry *) lookupGroupEntryByUID: (NSString *) theUID
|
- (NGLdapEntry *) lookupGroupEntryByUID: (NSString *) theUID
|
||||||
inDomain: (NSString *) domain;
|
inDomain: (NSString *) theDomain;
|
||||||
- (NGLdapEntry *) lookupGroupEntryByEmail: (NSString *) theEmail
|
- (NGLdapEntry *) lookupGroupEntryByEmail: (NSString *) theEmail
|
||||||
inDomain: (NSString *) domain;
|
inDomain: (NSString *) theDomain;
|
||||||
|
|
||||||
- (void) applyContactMappingToResult: (NSMutableDictionary *) ldifRecord;
|
- (void) applyContactMappingToResult: (NSMutableDictionary *) ldifRecord;
|
||||||
|
|
||||||
|
|
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue