summaryrefslogtreecommitdiff
path: root/source4/auth
Commit message (Collapse)AuthorAgeFilesLines
* lib/krb5_wrap: Move enctype conversion functions into a simple helper fileAndrew Bartlett2012-08-281-45/+0
|
* build: rename security → samba-securityBjörn Jacke2012-08-102-2/+2
| | | | | | | | | there is a libsecurity on OSF1 which clasheѕ with our security lib. see bug #9023. Signed-off-by: Stefan Metzmacher <metze@samba.org> Autobuild-User(master): Björn Jacke <bj@sernet.de> Autobuild-Date(master): Fri Aug 10 14:22:21 CEST 2012 on sn-devel-104
* s4-auth: Make sure we use the correct credential state.Andreas Schneider2012-07-171-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If we create a copy of the credential state we miss updates to the credentials. To establish a netlogon schannel connection we create client credentials and authenticate with them using dcerpc_netr_ServerAuthenticate2() For this we call netlogon_creds_client_authenticator() which increases the sequence number and steps the credentials. Lets assume the sequence number is 1002. After a successful authentication we get the server credentials and we send bind a auth request with the received creds. This sets up gensec and the gensec schannel module created a copy of the client creds and stores it in the schannel auth state. So the creds stored in gensec have the sequence number 1002. After that we continue and need the client credentials to call dcerpc_netr_LogonGetCapabilities() to verify the connection. So we need to increase the sequence number of the credentials to 1004 and step the credentials to the next state. The server always does the same and everything is just fine here. The connection is established and we want to do another netlogon call. So we get the creds from gensec and want to do a netlogon call e.g. dcerpc_netr_SamLogonWithFlags. We get the needed creds from gensec. The sequence number is 1002 and we talk to the server. The server is already ahead cause we are already at sequence number 1004 and the server expects it to be 1006. So the server gives us ACCESS_DENIED cause we use a copy in gensec. Signed-off-by: Günther Deschner <gd@samba.org>
* auth: Common function for retrieving PAC_LOGIN_INFO from PACChristof Schmitt2012-07-062-45/+0
| | | | | | | | Several functions use the same logic as kerberos_pac_logon_info. Move kerberos_pac_logon_info to common code and reuse it to remove the code duplication. Signed-off-by: Andrew Bartlett <abartlet@samba.org>
* auth: Remove .get_challenge (only used for security=server)Andrew Bartlett2012-07-037-97/+0
| | | | | | | | | | | | | With NTLMSSP, for NTLM2 we need to be able to set the effective challenge, so if we ever did use a module that needed this functionlity, we would downgrade to just NTLM. Now that security=server has been removed, we have no such module. This will make it easier to make the auth subsystem async, as we will not need to consider making .get_challenge async. Andrew Bartlett
* auth: Use only security_token_is_system to determine that a user is SYSTEMAndrew Bartlett2012-06-191-2/+0
| | | | | | | | | | This removes the duplication on how to detect that a user is system in Samba now that the smbd system account is also only SID_NT_SYSTEM we can use the same check everywhere. Andrew Bartlett Signed-off-by: Andreas Schneider <asn@samba.org>
* lib/param: Create a seperate server role for "active directory domain ↵Andrew Bartlett2012-06-152-1/+2
| | | | | | | | | | | | | | | controller" This will allow us to detect from the smb.conf if this is a Samba4 AD DC which will allow smarter handling of (for example) accidentially starting smbd rather than samba. To cope with upgrades from existing Samba4 installs, 'domain controller' is a synonym of 'active directory domain controller' and new parameters 'classic primary domain controller' and 'classic backup domain controller' are added. Andrew Bartlett
* s4:kerberos: fix typos in kerberos-notes.txtMichael Adam2012-06-121-2/+2
|
* s4:gensec: fix a comment typoMichael Adam2012-06-121-1/+1
|
* build: Add missing deps and make MESSAGING a private libraryAndrew Bartlett2012-06-071-1/+1
| | | | | | | | | To remove finddcs_nbt these missing deps need to be added. These subsystems linked to to implicit dependencies provided by finddcs. Due to the new arrangmenet of subsystems, MESSAGING needs to be a private library to avoid being a source of duplicate symbols. Andrew Bartlett
* lib/krb5_wrap: Move krb5_princ_size helper to source4 as it is only used thereAndrew Bartlett2012-05-301-0/+8
| | | | | | | | | | This is also where the related krb5_princ_component is declared. Also fix the configure check to use the correct name This helps the autoconf build on Heimdal. Andrew Bartlett
* gse: Use the smb_gss_oid_equal wrapper.Andreas Schneider2012-05-232-2/+5
| | | | Signed-off-by: Andreas Schneider <asn@samba.org>
* Introduce system MIT krb5 build with --with-system-mitkrb5 option.Alexander Bokovoy2012-05-232-1/+2
| | | | | | | | | | | | | | | | | System MIT krb5 build also enabled by specifying --without-ad-dc When --with-system-mitkrb5 (or --withou-ad-dc) option is passed to top level configure in WAF build we are trying to detect and use system-wide MIT krb5 libraries. As result, Samba 4 DC functionality will be disabled due to the fact that it is currently impossible to implement embedded KDC server with MIT krb5. Thus, --with-system-mitkrb5/--without-ad-dc build will only produce * Samba 4 client libraries and their Python bindings * Samba 3 server (smbd, nmbd, winbindd from source3/) * Samba 3 client libraries In addition, Samba 4 DC server-specific tests will not be compiled into smbtorture. This in particular affects spoolss_win, spoolss_notify, and remote_pac rpc tests.
* gensec_gssapi: Make it possible to build with MIT krb5Simo Sorce2012-05-231-10/+20
| | | | | | | | | | We need to ifdef out some minor things here because there is no available API to set these options in MIT. The realm and canonicalize options should be not interesting in the client case. Same for the send_to_kdc hacks. Also the OLD DES3 enctype is not at all interesting. I am not aware that Windows will ever use DES3 and no modern implementation relies on that enctype anymore as it has been fully deprecated long ago, so we can simply ignore it.
* pygensec: Fix init of variable if not specified.Jelmer Vernooij2012-05-181-1/+1
| | | | | | | | | Thanks to Wolfgang Sourdeau for reporting this. Bug: https://bugzilla.samba.org/show_bug.cgi?id=8946 Autobuild-User: Jelmer Vernooij <jelmer@samba.org> Autobuild-Date: Fri May 18 04:50:17 CEST 2012 on sn-devel-104
* s4:auth/gensec_gssapi: add "gensec_gssapi:requested_life_time" optionStefan Metzmacher2012-05-171-1/+6
| | | | metze
* s4:auth/gensec: implement gensec_gssapi_expire_time()Stefan Metzmacher2012-05-171-0/+13
| | | | metze
* s4:auth/gensec_gssapi: add missing 'break' statementsStefan Metzmacher2012-05-171-0/+2
| | | | metze
* s4:auth/gensec_gssapi: remember the expire timeStefan Metzmacher2012-05-172-2/+9
| | | | metze
* s4:auth: remove unused auth_server.cStefan Metzmacher2012-05-152-245/+0
| | | | metze
* s4-auth: Use smb_krb5_make_pac_checksum.Andreas Schneider2012-05-081-54/+24
| | | | Signed-off-by: Simo Sorce <idra@samba.org>
* s4:auth/kerberos: don't do tracing in MIT buildAlexander Bokovoy2012-05-041-17/+0
| | | | Signed-off-by: Simo Sorce <idra@samba.org>
* auth-session: MIT doesn't have import/export cred yetSimo Sorce2012-05-041-3/+5
| | | | | | | For now let's just loose this functionality with the MIT build. gss_import/export_cred should be availa ble when MIT 1.11 is released and this code is used only in some proxy scenario. Not normally needed for common configurations.
* s4-auth-krb: Make srv_keytab.c build against MIT KerberosSimo Sorce2012-05-041-8/+11
|
* Fix incompatible assignment warningSimo Sorce2012-05-041-1/+1
|
* Fix compiler warningSimo Sorce2012-05-041-1/+1
|
* s4-auth-krb: Use compat code to initialize keyblock contentsSimo Sorce2012-05-041-1/+1
|
* s4-auth-krb: Disable code in MIT buildSimo Sorce2012-05-041-1/+4
| | | | | | Unfortunately these functions are not available in MIT and there is no easy workaround or compat funciton I can see at this stage. Will fix properly once MIT gets the necessary functions or if another workaround can be found.
* Move keytab_copy to krb5samba libSimo Sorce2012-05-042-231/+1
| | | | | This is a helper fucntion that uses purely krb5 code, so it belongs to krb5samba which is the krb5 wrapper for samba.
* Fix keytab_copy to compile with MIT librariues tooSimo Sorce2012-05-041-10/+12
|
* keytab_copy: Fix style, whitespacesSimo Sorce2012-05-041-8/+17
|
* kerberos_pac: Fix code to work with MIT tooSimo Sorce2012-05-041-3/+3
|
* s4-auth-krb: smb_rd_req_return_stuff is used only in gensec_krb5Simo Sorce2012-05-045-2/+13
| | | | | | | Make it clearly a gensec_krb5 accessory file. This function should never be used anywhere else. This function was copied out from the Heimdal tree and is kept in a separate file for clarity and to keep the original license boilerplate.
* Split normal kinit from s4u2 flavored kinitSimo Sorce2012-05-041-7/+21
| | | | | | | This makes it simpler to slowly integrate MIT support and also amkes it somewhat clearer what operation is really requested. The 24u2 part is really only used by the cifs proxy code so we can temporarily disable it in the MIT build w/o major consequences.
* Move kerberos_kinit_password_cc to krb5samba libSimo Sorce2012-05-043-427/+1
|
* Move kerberos_kinit_keyblock_cc to krb5samba libSimo Sorce2012-05-042-55/+0
| | | | | Make it also work with MIT where krb5_get_in_tkt_with_keyblock is not available.
* krb-init: define out heimdal specific stuff in mitkrb buildSimo Sorce2012-05-041-3/+12
|
* s4-auth-krb: avoid useless conditionSimo Sorce2012-05-041-1/+1
| | | | Code bails out with ENOMEM 2 lines a bove if config_file is NULL anyways
* lib/replace: split out GSSAPI from lib/replace/system/kerberos.h into ↵Alexander Bokovoy2012-04-253-4/+3
| | | | | | | | | | | | | | lib/replace/system/gssapi.h With waf build include directories are defined by dependencies specified to subsystems. Without proper dependency <gssapi/gssapi.h> cannot be found for embedded Heimdal builds when there are no system-wide gssapi/gssapi.h available. Split out GSSAPI header includes in a separate replacement header and use that explicitly where needed. Autobuild-User: Alexander Bokovoy <ab@samba.org> Autobuild-Date: Wed Apr 25 00:18:33 CEST 2012 on sn-devel-104
* Make krb5 wrapper library common so they can be used all overSimo Sorce2012-04-232-4/+5
|
* For now just disable this Heindal specific stuff in the MIT buildSimo Sorce2012-04-235-3/+29
|
* Make krb5 context initialization not heimdal specificSimo Sorce2012-04-232-22/+54
| | | | | Turn the logging data to an opaque pointer. Ifdef code and use MIT logging function when built against system MIT.
* Fix Error messagesSimo Sorce2012-04-191-4/+2
|
* s4-auth: Make sure ldb context is initialized even if not passed by Python codeAlexander Bokovoy2012-04-141-1/+1
| | | | | Autobuild-User: Alexander Bokovoy <ab@samba.org> Autobuild-Date: Sat Apr 14 00:21:00 CEST 2012 on sn-devel-104
* srv_keytab: Pass krb5_context directly, it's all we use anyways.Simo Sorce2012-04-121-16/+11
| | | | Signed-off-by: Andreas Schneider <asn@samba.org>
* auth-krb: Move pac related util functions in a single place.Simo Sorce2012-04-123-0/+3
| | | | Signed-off-by: Andreas Schneider <asn@samba.org>
* auth-krb: Make functions static.Simo Sorce2012-04-121-0/+71
| | | | | | | The remaining gssapi_parse functions were used exclusively in gensec_krb5. Move them there and make them static. Signed-off-by: Andreas Schneider <asn@samba.org>
* auth-krb: Nove oid packet check to gensec_util.Simo Sorce2012-04-122-43/+3
| | | | | | | | This is clearly a utiliy function generic to gensec. Also the 3 callers had identical implementations. Provide a generic implementation for all of them and avoid duplicating the code everywhere. Signed-off-by: Andreas Schneider <asn@samba.org>
* s4-auth-krb: Remove dependency on credentials too.Simo Sorce2012-04-122-11/+5
| | | | Signed-off-by: Andreas Schneider <asn@samba.org>
* s4-auth-krb: Remove unneded dependency on kerberos_util.Simo Sorce2012-04-123-40/+54
| | | | Signed-off-by: Andreas Schneider <asn@samba.org>