svn commit: samba r11995 - in branches/SAMBA_4_0/source: auth/credentials auth/gensec heimdal/kdc heimdal/lib/gssapi heimdal/lib/hdb heimdal/lib/krb5 libnet scripting/ejs scripting/libjs setup

abartlet at samba.org abartlet at samba.org
Thu Dec 1 05:20:41 GMT 2005


Author: abartlet
Date: 2005-12-01 05:20:39 +0000 (Thu, 01 Dec 2005)
New Revision: 11995

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=11995

Log:
A big kerberos-related update.

This merges Samba4 up to current lorikeet-heimdal, which includes a
replacement for some Samba-specific hacks.

In particular, the credentials system now supplies GSS client and
server credentials.  These are imported into GSS with
gss_krb5_import_creds().  Unfortunetly this can't take an MEMORY
keytab, so we now create a FILE based keytab as provision and join
time.

Because the keytab is now created in advance, we don't spend .4s at
negprot doing sha1 s2k calls.  Also, because the keytab is read in
real time, any change in the server key will be correctly picked up by
the the krb5 code.

To mark entries in the secrets which should be exported to a keytab,
there is a new kerberosSecret objectClass.  The new routine
cli_credentials_update_all_keytabs() searches for these, and updates
the keytabs.

This is called in the provision.js via the ejs wrapper
credentials_update_all_keytabs().  

We can now (in theory) use a system-provided /etc/krb5.keytab, if 

krb5Keytab: FILE:/etc/krb5.keytab

is added to the secrets.ldb record.  By default the attribute 

privateKeytab: secrets.keytab

is set, pointing to allow the whole private directory to be moved
without breaking the internal links.


Modified:
   branches/SAMBA_4_0/source/auth/credentials/credentials.c
   branches/SAMBA_4_0/source/auth/credentials/credentials.h
   branches/SAMBA_4_0/source/auth/credentials/credentials_files.c
   branches/SAMBA_4_0/source/auth/credentials/credentials_krb5.c
   branches/SAMBA_4_0/source/auth/gensec/gensec_gssapi.c
   branches/SAMBA_4_0/source/heimdal/kdc/kerberos5.c
   branches/SAMBA_4_0/source/heimdal/lib/gssapi/accept_sec_context.c
   branches/SAMBA_4_0/source/heimdal/lib/gssapi/acquire_cred.c
   branches/SAMBA_4_0/source/heimdal/lib/gssapi/arcfour.c
   branches/SAMBA_4_0/source/heimdal/lib/gssapi/copy_ccache.c
   branches/SAMBA_4_0/source/heimdal/lib/gssapi/gssapi.h
   branches/SAMBA_4_0/source/heimdal/lib/gssapi/gssapi_locl.h
   branches/SAMBA_4_0/source/heimdal/lib/gssapi/init_sec_context.c
   branches/SAMBA_4_0/source/heimdal/lib/gssapi/release_cred.c
   branches/SAMBA_4_0/source/heimdal/lib/hdb/db.c
   branches/SAMBA_4_0/source/heimdal/lib/hdb/hdb-protos.h
   branches/SAMBA_4_0/source/heimdal/lib/hdb/ndbm.c
   branches/SAMBA_4_0/source/heimdal/lib/krb5/cache.c
   branches/SAMBA_4_0/source/heimdal/lib/krb5/get_for_creds.c
   branches/SAMBA_4_0/source/heimdal/lib/krb5/keytab.c
   branches/SAMBA_4_0/source/heimdal/lib/krb5/krb5-private.h
   branches/SAMBA_4_0/source/heimdal/lib/krb5/krb5-protos.h
   branches/SAMBA_4_0/source/heimdal/lib/krb5/rd_cred.c
   branches/SAMBA_4_0/source/libnet/libnet_join.c
   branches/SAMBA_4_0/source/scripting/ejs/smbcalls_creds.c
   branches/SAMBA_4_0/source/scripting/libjs/provision.js
   branches/SAMBA_4_0/source/setup/secrets.ldif


Changeset:
Sorry, the patch is too large (1744 lines) to include; please use WebSVN to see it!
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=11995


More information about the samba-cvs mailing list