summaryrefslogtreecommitdiff
path: root/src/providers/ad
AgeCommit message (Collapse)AuthorFilesLines
2013-06-07LDAP: new SDAP domain structureJakub Hrozek2-6/+15
Previously an sdap_id_ctx was always tied to one domain with a single set of search bases. But with the introduction of Global Catalog lookups, primary domain and subdomains might have different search bases. This patch introduces a new structure sdap_domain that contains an sssd domain or subdomain and a set of search bases. With this patch, there is only one sdap_domain that describes the primary domain.
2013-06-07LDAP: Pass in a connection to ID functionsJakub Hrozek1-1/+1
Instead of using the default connection from the sdap_id_ctx, allow the caller to specify which connection shall be used for this particular request. Again, no functional change is present in this patch, just another parameter is added.
2013-06-07LDAP: sdap_id_ctx might contain several connectionsJakub Hrozek2-27/+22
With some LDAP server implementations, one server might provide different "views" of the identites on different ports. One example is the Active Directory Global catalog. The provider would contact different view depending on which operation it is performing and against which SSSD domain. At the same time, these views run on the same server, which means the same server options, enumeration, cleanup or Kerberos service should be used. So instead of using several different failover ports or several instances of sdap_id_ctx, this patch introduces a new "struct sdap_id_conn_ctx" that contains the connection cache to the particular view and an instance of "struct sdap_options" that contains the URI. No functional changes are present in this patch, currently all providers use a single connection. Multiple connections will be used later in the upcoming patches.
2013-06-07Do not obfuscate calls with booleansJakub Hrozek1-7/+21
Instead of using boolean variables to denote whether the call is adding a primary or a secondary server, use a function wrapper that tells what it's doing by its name.
2013-05-28AD dyndns: extract the host name from URIJakub Hrozek1-9/+31
2013-05-27Fix dyndns timer initializationJakub Hrozek2-2/+9
The dyndns init function was starting the timer even if the updates were set to False. This patch splits the init of dynamic updates and the timer into two functions so that the back end can start the updates separately from reading the options.
2013-05-23Adding option to disable retrieving large AD groups.Lukas Slebodnik1-0/+1
This commit adds new option ldap_disable_range_retrieval with default value FALSE. If this option is enabled, large groups(>1500) will not be retrieved and behaviour will be similar like was before commit ae8d047122c "LDAP: Handle very large Active Directory groups" https://fedorahosted.org/sssd/ticket/1823
2013-05-22Fix return code for AD subdomain requestSumit Bose1-1/+3
2013-05-20Remove unneeded parameter of setup_child and namespace itJakub Hrozek1-1/+1
setup_child() was accepting a parameter it didn't use. Also the function name was too generic, so I added a sdap prefix.
2013-05-15Fix segfault in AD Subdomains ModuleLukas Slebodnik1-0/+2
In function ad_subdomains_get_netlogon_done: If variable "reply_count" is zero then variable "reply" will not be initialized. Therefore we should not continue.
2013-05-13Enable the AD dynamic DNS updates by defaultJakub Hrozek1-1/+1
https://fedorahosted.org/sssd/ticket/1915
2013-05-07AD: read flat name and SID of the AD domainSumit Bose3-0/+590
For various features either the flat/short/NetBIOS domain name or the domain SID is needed. Since the responders already try to do a subdomain lookup when and known domain name is encountered I added a subdomain lookup to the AD provider which currently only reads the SID from the base DN and the NetBIOS name from a reply of a LDAP ping. The results are written to the cache to have them available even if SSSD is started in offline mode. Looking up trusted domains can be added later. Since all the needed responder code is already available from the corresponding work for the IPA provider this patch fixes https://fedorahosted.org/sssd/ticket/1468
2013-05-03AD: Always initialize ID mappingJakub Hrozek1-5/+3
Because we now always store SIDs in the LDAP provider, we also need to always initialize the ID mapping context even if ID mapping itself is off.
2013-05-03Active Directory dynamic DNS updatesJakub Hrozek5-0/+306
https://fedorahosted.org/sssd/ticket/1504 Implements dynamic DNS updates for the AD provider. By default, the updates also update the reverse zone and run periodically every 24 hours.
2013-05-03AD SRV plugin: check if site name is emptyPavel Březina1-2/+4
2013-05-02DNS sites support - add AD SRV pluginPavel Březina5-5/+849
https://fedorahosted.org/sssd/ticket/1032
2013-04-22Allow usage of enterprise principalsSumit Bose1-0/+1
Enterprise principals are currently most useful for the AD provider and hence enabled here by default while for the other Kerberos based authentication providers they are disabled by default. If additional UPN suffixes are configured for the AD domain the user principal stored in the AD LDAP server might not contain the real Kerberos realm of the AD domain but one of the additional suffixes which might be completely randomly chooses, e.g. are not related to any existing DNS domain. This make it hard for a client to figure out the right KDC to send requests to. To get around this enterprise principals (see http://tools.ietf.org/html/rfc6806 for details) were introduced. Basically a default realm is added to the principal so that the Kerberos client libraries at least know where to send the request to. It is not in the responsibility of the KDC to either handle the request itself, return a client referral if he thinks a different KDC can handle the request or return and error. This feature is also use to allow authentication in AD environments with cross forest trusts. Fixes https://fedorahosted.org/sssd/ticket/1842
2013-04-10DNS sites support - use SRV DNS lookup plugin in all providersPavel Březina1-0/+10
https://fedorahosted.org/sssd/ticket/1032 We set a plugin during an initialization of ID provider, which is an authoritative provider for a plugin choice. The plugin is set only once. When other provider is initalized (e.g. id = IPA, sudo = LDAP), we do not overwrite the plugin. Since sssm_*_id_init() is called from all module constructors, this patch relies on the fact, that ID provider is initialized before all other providers.
2013-04-03Allow setting krb5_renew_interval with a delimiterAriel Barria1-1/+1
https://fedorahosted.org/sssd/ticket/902 changed the data type the krb5_renew_interval to string. function krb5_string_to_deltat is used to convert and allow delimiters
2013-03-20ldap: Fallback option for rfc2307 schemaSimo Sorce1-0/+1
Add option to fallback to fetch local users if rfc2307is being used. This is useful for cases where people added local users as LDAP members and rely on these group memberships to be maintained on the local host. Disabled by default as it violates identity domain separation. Ticket: https://fedorahosted.org/sssd/ticket/1020
2013-03-19Convert sdap_access to new error codesSimo Sorce1-17/+15
Also simplify sdap_access_send to avoid completely fake _send() routines.
2013-03-18Decrease krb5_auth_timeout defaultOndrej Kos1-1/+1
https://fedorahosted.org/sssd/ticket/1738
2013-02-10Add realm info to sss_domain_infoSimo Sorce1-1/+1
2013-01-21Add be_req_get_data() helper funciton.Simo Sorce1-3/+4
In preparation for making struct be_req opaque.
2013-01-21Add be_req_get_be_ctx() helper.Simo Sorce2-14/+14
In preparation for making be_req opaque
2013-01-21Introduce be_req_terminate() helperSimo Sorce1-5/+6
Call it everywhere instead of directly dereferencing be_req->fn This is in preparation of making be_req opaque.
2013-01-21Pass domain not be_req to access check functionsSimo Sorce1-4/+7
2013-01-21Remove sysdb as a be request structure memberSimo Sorce1-1/+0
The sysdb context is already available through the 'domain' context.
2013-01-02failover: Protect against empty host namesMichal Zidek1-1/+1
Added new parameter to split_on_separator that allows to skip empty values. The whole function was rewritten. Unit test case was added to check the new implementation. https://fedorahosted.org/sssd/ticket/1484
2012-11-19LDAP: Provide a common sdap_set_sasl_options init functionJakub Hrozek1-44/+8
The AD and IPA initialization functions shared the same code. This patch moves the code into a common initialization function.
2012-10-04Fix default upper limit of slicesOndrej Kos1-1/+1
https://fedorahosted.org/sssd/ticket/1537 changes upper limit of slices to 2000200000 in providers code and manpage.
2012-10-02Flip the default value of ldap_initgroups_use_matching_rule_in_chainJakub Hrozek1-1/+1
https://fedorahosted.org/sssd/ticket/1535
2012-09-17Failover: use _srv_ when no primary server is definedPavel Březina1-12/+3
https://fedorahosted.org/sssd/ticket/1521
2012-08-23Fix: IPv6 address with square brackets doesn't work.Michal Zidek1-0/+7
https://fedorahosted.org/sssd/ticket/1365
2012-08-23Typo in debug message (SSSd -> SSSD).Michal Zidek1-1/+1
https://fedorahosted.org/sssd/ticket/1434
2012-08-23Consolidation of functions that make realm upper-caseOndrej Kos1-6/+1
2012-08-23AD context was set to null due to type mismatchOndrej Kos3-1/+14
2012-08-15Duplicate detection in fail over did not work.Michal Zidek1-1/+6
https://fedorahosted.org/sssd/ticket/1472
2012-08-09SRV resolution for backup servers should not be permitted.Michal Zidek1-1/+9
https://fedorahosted.org/sssd/ticket/1463
2012-08-09Change default for ldap_idmap_range_min to 200000Jakub Hrozek1-1/+1
https://fedorahosted.org/sssd/ticket/1462
2012-08-01Primary server support: new option in AD providerJan Zeleny3-1/+5
This patch adds support for new config option ad_backup_server. The description of this option's functionality is included in man page in one of previous patches.
2012-08-01Primary server support: new options in krb5 providerJan Zeleny1-0/+3
This patch adds support for new config options krb5_backup_server and krb5_backup_kpasswd. The description of this option's functionality is included in man page in one of previous patches.
2012-08-01Primary server support: new option in ldap providerJan Zeleny1-0/+2
This patch adds support for new config option ldap_backup_uri. The description of this option's functionality is included in man page in previous patch.
2012-08-01Primary server support: AD adaptationJan Zeleny3-35/+77
This patch adds support for the primary server functionality into AD provider. No backup servers are added at the moment, just the basic support is in place.
2012-07-18AD: Fix defaults for krb5_canonicalizeStephen Gallagher1-2/+2
The AD provider cannot function with canonicalization because of a bug in Active Directory rendering it unable to complete a password-change while canonicalization is enabled.
2012-07-16AD: Add missing DP option terminatorStephen Gallagher1-1/+2
2012-07-06AD: Force case-insensitive operation in AD providerStephen Gallagher1-0/+18
2012-07-06AD: use krb5_keytab for validation and GSSAPIStephen Gallagher3-3/+12
This simplifies configuration by eliminating the need to specifiy both krb5_keytab and ldap_krb5_keytab if the keytab is not located at /etc/krb5.keytab
2012-07-06AD: Add AD access-control providerStephen Gallagher4-1/+188
This patch adds support for checking whether a user is expired or disabled in AD.
2012-07-06AD: Add AD auth and chpass providersStephen Gallagher3-1/+155
These new providers take advantage of existing code for the KRB5 provider, providing sensible defaults for operating against an Active Directory 2008 R2 or later server.