1
0
mirror of https://github.com/samba-team/samba.git synced 2025-05-28 21:05:48 +03:00

83 Commits

Author SHA1 Message Date
Andrew Bartlett
a1827a1deb r12227: I realised that I wasn't yet seeing authenticated LDAP for the ldb
backend.

The idea is that every time we open an LDB, we can provide a
session_info and/or credentials.  This would allow any ldb to be remote
to LDAP.  We should also support provisioning to a authenticated ldap
server.

(They are separate so we can say authenticate as foo for remote, but
here we just want a token of SYSTEM).

Andrew Bartlett
(This used to be commit ae2f3a64ee0b07575624120db45299c65204210b)
2007-10-10 13:47:22 -05:00
Andrew Bartlett
9c6b7f2d62 r11995: 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.
(This used to be commit 6b75573df49c6210e1b9d71e108a9490976bd41d)
2007-10-10 13:46:56 -05:00
Andrew Tridgell
09932e0383 r11956: removed the old rootdse.ldif, and the provision.js code that uses it
(This used to be commit 4b56c129c6f1654f9dbe37bc950a836f15c48b3d)
2007-10-10 13:46:50 -05:00
Stefan Metzmacher
509be8d902 r11781: rename tree to tcons to match the sessions substructure of smbsrv_connection
metze
(This used to be commit acd3e644e030a3544ddc6cdcd4e0ec9617732cba)
2007-10-10 13:46:26 -05:00
Andrew Tridgell
b00252c5b8 r11501: change provision code to use the new display specifiers
(This used to be commit 696fa87a212e65d6337c39a84f682b64b52593a5)
2007-10-10 13:45:45 -05:00
Andrew Tridgell
318ac84440 r11500: fixed a bug in the variable substition code using the new limit argument to split()
(This used to be commit 25131efea8c1a2b0bfa7f999766ebcbab8fa8006)
2007-10-10 13:45:45 -05:00
Andrew Tridgell
4764eb7a93 r11496: add a minimal ads-compatible schema into our sam.ldb setup. This is
needed for mmc management of Samba4.
(This used to be commit cbbce4fe403efc0b9e63052c2aa1fbb5972f2abe)
2007-10-10 13:45:45 -05:00
Andrew Tridgell
917ca215bb r11475: removed a extraneous ldb_delete() call (i had it there for debugging)
(This used to be commit daa9dcd8f4b1dde801091ec64faa8158481d171c)
2007-10-10 13:45:42 -05:00
Andrew Tridgell
c845ab1e60 r11474: - enable ldb transactions from ejs
- speed up provisioning a bit using a ldb transaction (also means you
  can't end up with a ldb being half done)
(This used to be commit 91dfe304cf688bb81b69ff3192ac84b78b34b311)
2007-10-10 13:45:41 -05:00
Andrew Tridgell
783851099b r11458: fixed our ejs smbscript interfaces to use arrays where appropriate. In
js arrays are a special type of object where the length property is
automatic, and cannot be modified manually. Our code was manually
setting length, which made it abort when someone passed in a real ejs
array. To fix this we need to create real arrays instead of objects,
and remove the code that manually sets the length
(This used to be commit ebdd1393fde44a0a35446d1a922d29a7c1769ba7)
2007-10-10 13:45:39 -05:00
Andrew Tridgell
c5b99e3c69 r11363: fixed a problem with provisioning when hklm already exists (the
problem is really caused by hklm not having objectclass attributes on
its records, but this is a workaround)
(This used to be commit 62d5253a033f47335ceefade9ad7d98ddfc19584)
2007-10-10 13:45:26 -05:00
Andrew Tridgell
75d3a8f6dc r11285: fixed winreg.js for the recent change to winreg.idl
(This used to be commit 27f46b4f18346ea03d8626a380e417b00f7a88d1)
2007-10-10 13:45:13 -05:00
Andrew Bartlett
17be61b7b9 r11222: Small provision fixes: canonicalName is now generated, and the DC=
list should be from the dnsdomain (ie lowercae).

Andrew Bartlett
(This used to be commit 10d692a1c216134b301b5851ce1e71ed93cc6164)
2007-10-10 13:45:05 -05:00
Andrew Bartlett
8103ef3974 r11217: Ensure the realm is substituted in UPPER case.
Andrew Bartlett
(This used to be commit 0c29f0e30d64be09baad792eb2850aa0b8fa9981)
2007-10-10 13:45:04 -05:00
Andrew Bartlett
642b42424a r11203: Use different variable names to make it easier to tell which assert fired.
Andrew Bartlett
(This used to be commit df6a40c2d261804f1cd4feb24572135a4c62a802)
2007-10-10 13:45:01 -05:00
Stefan Metzmacher
c3c26c9008 r11087: - add type,name,scope as attributes to winsRecords,
so you can use them in search filters,
  only for administration not used inside the winserver code
- fix the samba3 ugrade scripts to create a correct samba4 wins.ldb

metze
(This used to be commit 9f3b6746d86583c48097da48c28f50f075bbd3e3)
2007-10-10 13:44:46 -05:00
Jelmer Vernooij
bb9c9ec69c r10515: Handle replacement of "domain logons" and "domain master" by "server role"
(This used to be commit c5e3a1c55d9e21f9ee618169dc05c69ee9c9c5b1)
2007-10-10 13:38:59 -05:00
Andrew Tridgell
bcc3ce695e r10193: r11632@blu: tridge | 2005-08-30 23:08:27 +1000
if we fail to erase a ldb during provision by traversing
 and deleting records (an in-place erase) then just unlink it
 and start it again. This makes provisioning much more robust
 to changes in ldb that make it not backward compatible with
 old DBs.
(This used to be commit 173655aec25c462b8b90b850df65ae6f95f44efb)
2007-10-10 13:38:07 -05:00
Jelmer Vernooij
342d229b40 r10190: Do some very basic input checking when provisioning.
(This used to be commit 87f25fe49caa78422582337c5208a331ef5b8c15)
2007-10-10 13:38:06 -05:00
Jelmer Vernooij
aae4b1a951 r9951: Add another value to the default HKLM.
Convert Samba3 policy "refuse machine pw change" to registry value.
(This used to be commit a143234ac7622ef3ef87c80224927551a1452e4b)
2007-10-10 13:36:24 -05:00
Jelmer Vernooij
1170f02e23 r9925: Fix swapped nt/lm password hashes - caught by Andrew Bartlett
(This used to be commit 4f0ee80f6cc1639f612a50ddb8d99ee36d8ce8d6)
2007-10-10 13:36:22 -05:00
Jelmer Vernooij
e2e2508b58 r9899: Be more conservative about what is sent to the remote server in ldb_map.
(This used to be commit 76e943d4416e38ce4cce27d5403bc3e133d0025b)
2007-10-10 13:36:21 -05:00
Jelmer Vernooij
05db3024ba r9854: Finish ldb_map testsuite
Update PLAN
Some more small other fixes
(This used to be commit de2bde2526ffaf521253e3b9e58fc11417986321)
2007-10-10 13:36:18 -05:00
Jelmer Vernooij
222fdd5237 r9842: More error checks in the ldb_map modules, extend testsuite
(This used to be commit b7992de4b7d42a55e00509c887a269a07c19627d)
2007-10-10 13:36:17 -05:00
Jelmer Vernooij
0712cbdab4 r9834: More tests for the upgrade from Samba3
(This used to be commit d2db164d6f674cada470e871c558c75f98244141)
2007-10-10 13:36:17 -05:00
Jelmer Vernooij
2f23a8cec1 r9830: Fix support for importing registry values. Extended the examplre registry tdb.
(This used to be commit 11e2a1938966f3aa9e9c25433181c20843951a6b)
2007-10-10 13:36:16 -05:00
Jelmer Vernooij
d991196655 r9827: Convert 'passdb backend' rather then 'passdb backends'
Be a bit more verbose
(This used to be commit fb2fd8da10b281b2064d4cae5d5a0630e8a207da)
2007-10-10 13:36:16 -05:00
Jelmer Vernooij
f58a74aaba r9816: Work on testsuite for upgrade
Add 'paths' object to provision code.
(This used to be commit 488d737fb0ebbc2535d0ec17c14f0dc1eaf2a578)
2007-10-10 13:35:04 -05:00
Jelmer Vernooij
cf016f972b r9805: Add 'data' property to param EJS object
Write out new smb.conf file. Parameters that have disappeared
between Samba 3 and 4 will optionally be prefixed with 'samba3:'
(This used to be commit 27eefbd9059fe0a3daca15a71da7b4cb88ed22ec)
2007-10-10 13:35:03 -05:00
Jelmer Vernooij
9f4b32996c r9800: Add EJS interface to param. tridge, sorry this overlaps a bit
with your loadparm interface. :-/
(This used to be commit bb0cef581a09a86113f3212c776c011ae73def14)
2007-10-10 13:35:03 -05:00
Jelmer Vernooij
6cf1b0c07c r9793: Be more verbose, check for errors in upgrade script.
(This used to be commit b7c09df9e506f8048f69c4bdd1c3351e3b554e18)
2007-10-10 13:35:02 -05:00
Jelmer Vernooij
7be4cf8c1d r9770: Couple other bugfixes
Update TODO-list
(This used to be commit d9541535e3f9e1c058410eeb0a54d60181572f2b)
2007-10-10 13:34:58 -05:00
Jelmer Vernooij
ec934124db r9762: Add support for reading good old smbpasswd files
Fix password support
Make base64 decode/encode functions available to EJS
(This used to be commit 1376a1fe44cd6b01709819095a711c14626b1d3e)
2007-10-10 13:34:57 -05:00
Jelmer Vernooij
c9ace93ce2 r9756: One-way upgrade from Samba3->Samba4 basically works now
Still need to polish some rough edges
(This used to be commit a8f309aa812533f57a90410722dfb342c8cf3b48)
2007-10-10 13:34:56 -05:00
Jelmer Vernooij
11f3f0fa6c r9754: Upgrading with the command line utility now works, at least partially (-:
Upgrading using SWAT should work as well now.
(This used to be commit 8baa2ac377315ae8b365f58c2bda0bf3d0c5aec3)
2007-10-10 13:34:56 -05:00
Jelmer Vernooij
442d147f6d r9746: Add "staff" as possible alternative to wheel
(should fix standard provisioning on AIX)
(This used to be commit b1d9ef899821376d7883fa126a14c06ed1b16601)
2007-10-10 13:34:56 -05:00
Jelmer Vernooij
0a72d9a5f7 r9744: - [upgrade.js] Start working on smb.conf conversion.
- [ldb_map] Support storing non-mappable data in a fallback LDB
(This used to be commit 435e4c6389b9d9b545beec8036289620ee5883db)
2007-10-10 13:34:55 -05:00
Jelmer Vernooij
0549763600 r9735: More work on generating a valid Samba4 configuration using the
Samba3 data (both console and SWAT)
(This used to be commit d569465dc4def55c27878028f2fc762960f453d8)
2007-10-10 13:34:55 -05:00
Jelmer Vernooij
d152839e29 r9722: Initial attempt at converting samba3dump to EJS..
(This used to be commit 7e3b94dfb9c421793dab7813b96ca63da4b33960)
2007-10-10 13:34:53 -05:00
Jelmer Vernooij
d6cd54fb0a r9718: Work a bit on the SWAT interface
(This used to be commit b1844905d2c1ca26aef0ccba799ff16383348fc1)
2007-10-10 13:34:53 -05:00
Andrew Tridgell
9b0662bb44 r9707: r11080@blu: tridge | 2005-08-28 12:41:12 +1000
make sure we leave the account enabled after creating a new user
(This used to be commit a22d0d02eed8b960f5fde4211b0d2967c500f4a4)
2007-10-10 13:34:52 -05:00
Andrew Tridgell
4a37c7ebbe r9568: updated the winreg js library for CreateKey, and add a --createkey
option to the winreg tool
(This used to be commit 881452c7b7cc00222328f743c2c0c4ece39f4c96)
2007-10-10 13:34:29 -05:00
Andrew Tridgell
60eb9f87a0 r9497: - converted the winreg library to a more OO style of interface
- added a reg.typestring() method that returns a string representation of a type
(This used to be commit 47cf409cdf501fc3e2b0c65688a9ef1d702278a5)
2007-10-10 13:34:22 -05:00
Andrew Tridgell
f4aa80d88f r9465: handle encoding and decoding of pointers, representing them as a
string containing "(POINTER)"
(This used to be commit 6f69eeb8f258063f1ac911ab38e667e7743ccba3)
2007-10-10 13:34:18 -05:00
Andrew Tridgell
4e3cacdaa8 r9355: return the EnumKey and EnumValue list we have so far when we get a rpc fault
(This used to be commit 3a9c63923fbb21dfb8e5fc549dde8fad8cb8f354)
2007-10-10 13:33:27 -05:00
Andrew Tridgell
9fffd12799 r9338: fixed the winreg IDL to be correct for the EnumKey and EnumValue
calls. The previous IDL was just a workaround for the limitations of
our older rpc infrastructure. Now that Jelmer has added much improved
string support using the charset keyword we can correctly implemenent
the unusual winreg string buffers.

Jelmer, note the little comment I put on winreg_StringBuf() about why
I couldn't use [value()] for the length field.

This also fixes EnumKey() and EnumValue() to use NTTIME fields for the
last_changed_time. I don't know why we were using a pair of uint32's,
as it is just a NTTIME.
(This used to be commit 8354b016122cc4f3cff042b3ada1de07e1614eb7)
2007-10-10 13:33:25 -05:00
Andrew Tridgell
8942ac69f0 r9227: cleanup and simplify the AJAJ code
(This used to be commit ceb7669e5991e9dda759d60a09a0a65e6caba991)
2007-10-10 13:31:34 -05:00
Andrew Tridgell
924b3cc953 r9218: make the winreg library code handle arbitrary paths more efficiently
and more conveniently (caller doesn't need to know the hive names now)
(This used to be commit dadd7e22fb439f7b18c429a95c75902e4741ba8d)
2007-10-10 13:31:32 -05:00
Andrew Tridgell
e49aeef232 r9178: remove the old server printf code
(This used to be commit 0b96b3bfe370f5f4e44cc1a2a249f766a04c5b07)
2007-10-10 13:31:29 -05:00
Andrew Tridgell
0c15c02411 r9174: ejs does not include the special variable 'length' in for loops over objects,
so we need to check for it separately in the object lineariser
(This used to be commit ea3c3d0a0f79c49c2e93da4956cc509614f92f37)
2007-10-10 13:31:28 -05:00