summaryrefslogtreecommitdiff
path: root/source4/scripting/libjs/provision.js
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r12823: Fix up the provison and newuser code in SWAT. This also cleans up theAndrew Bartlett1-21/+30
main provision script a bit, as the argument list was getting out of control. (It has been replaced in part with an object). This also returns the session_info from the auth code into ejs. We still need access control allowing only root to re-provision. Andrew Bartlett (This used to be commit 002cdcf3cab6563909d31edc5d825e857dc0a732)
2007-10-10r12749: Fix the newuser script.Andrew Bartlett1-6/+4
Andrew Bartlett (This used to be commit 42cdad5e3f06c307baf80396fd8449b803ef84c3)
2007-10-10r12739: Add support for using credentials in the provision process.Andrew Bartlett1-16/+21
This should allow us to provision to a 'normal' LDAP server. Also add in 'session info' hooks (unused). Both of these need to be hooked in on the webserver. Andrew Bartlett (This used to be commit b349d2fbfefd0e0d4620b9e8e0c4136f900be1ae)
2007-10-10r12695: A dot is allowed in NetBIOS names.Jelmer Vernooij1-2/+2
(This used to be commit f4ac7d6359b5a6de04a6ea518dec99f4c9b49b3d)
2007-10-10r12533: Get the ldb.errstring() out to the user on failure. It helps a lotAndrew Bartlett1-2/+9
with debugging! Andrew Bartlett (This used to be commit fe36cb6767ce99432e2778037aad334170dca173)
2007-10-10r12252: With this change (hack) we can now do an provision onto Samba4's LDAPAndrew Bartlett1-1/+4
server. Now to try another one... Andrew Bartlett (This used to be commit 175f616d74ac3567a35713343be0c63c96c5aede)
2007-10-10r12227: I realised that I wasn't yet seeing authenticated LDAP for the ldbAndrew Bartlett1-9/+9
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-10r11995: A big kerberos-related update.Andrew Bartlett1-0/+3
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-10r11956: removed the old rootdse.ldif, and the provision.js code that uses itAndrew Tridgell1-3/+0
(This used to be commit 4b56c129c6f1654f9dbe37bc950a836f15c48b3d)
2007-10-10r11501: change provision code to use the new display specifiersAndrew Tridgell1-0/+2
(This used to be commit 696fa87a212e65d6337c39a84f682b64b52593a5)
2007-10-10r11496: add a minimal ads-compatible schema into our sam.ldb setup. This isAndrew Tridgell1-2/+2
needed for mmc management of Samba4. (This used to be commit cbbce4fe403efc0b9e63052c2aa1fbb5972f2abe)
2007-10-10r11475: removed a extraneous ldb_delete() call (i had it there for debugging)Andrew Tridgell1-1/+0
(This used to be commit daa9dcd8f4b1dde801091ec64faa8158481d171c)
2007-10-10r11474: - enable ldb transactions from ejsAndrew Tridgell1-4/+19
- 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-10r11363: fixed a problem with provisioning when hklm already exists (theAndrew Tridgell1-2/+1
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-10r11222: Small provision fixes: canonicalName is now generated, and the DC=Andrew Bartlett1-1/+1
list should be from the dnsdomain (ie lowercae). Andrew Bartlett (This used to be commit 10d692a1c216134b301b5851ce1e71ed93cc6164)
2007-10-10r11217: Ensure the realm is substituted in UPPER case.Andrew Bartlett1-2/+2
Andrew Bartlett (This used to be commit 0c29f0e30d64be09baad792eb2850aa0b8fa9981)
2007-10-10r11203: Use different variable names to make it easier to tell which assert ↵Andrew Bartlett1-4/+4
fired. Andrew Bartlett (This used to be commit df6a40c2d261804f1cd4feb24572135a4c62a802)
2007-10-10r10193: r11632@blu: tridge | 2005-08-30 23:08:27 +1000Andrew Tridgell1-0/+22
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-10r10190: Do some very basic input checking when provisioning.Jelmer Vernooij1-0/+26
(This used to be commit 87f25fe49caa78422582337c5208a331ef5b8c15)
2007-10-10r9816: Work on testsuite for upgradeJelmer Vernooij1-13/+31
Add 'paths' object to provision code. (This used to be commit 488d737fb0ebbc2535d0ec17c14f0dc1eaf2a578)
2007-10-10r9770: Couple other bugfixesJelmer Vernooij1-2/+1
Update TODO-list (This used to be commit d9541535e3f9e1c058410eeb0a54d60181572f2b)
2007-10-10r9756: One-way upgrade from Samba3->Samba4 basically works nowJelmer Vernooij1-2/+3
Still need to polish some rough edges (This used to be commit a8f309aa812533f57a90410722dfb342c8cf3b48)
2007-10-10r9746: Add "staff" as possible alternative to wheelJelmer Vernooij1-1/+1
(should fix standard provisioning on AIX) (This used to be commit b1d9ef899821376d7883fa126a14c06ed1b16601)
2007-10-10r9707: r11080@blu: tridge | 2005-08-28 12:41:12 +1000Andrew Tridgell1-1/+26
make sure we leave the account enabled after creating a new user (This used to be commit a22d0d02eed8b960f5fde4211b0d2967c500f4a4)
2007-10-10r8790: Finish the migration of aliases and privilages with SamSync, by addingAndrew Bartlett1-12/+7
templating support for foreignSecurityPrincipals to the samdb module. This is an extension beyond what microsoft does, and has been very useful :-) The setup scripts have been modified to use the new template, as has the SAMR and LSA code. Other cleanups in LSA remove the assumption that the short domain name is the first component of the realm. Also add a lot of useful debug messages, to make it clear how/why the SamSync may have gone wrong. Many of these should perhaps be hooked into an error string. Andrew Bartlett (This used to be commit 1f071b0609c5c83024db1d4a7d04334a932b8253)
2007-10-10r8677: The first part of the domain name may not be equal to the netbios ↵Andrew Bartlett1-0/+3
domain name. Remove the use of flatname from the main domain object, we no longer reference it. Andrew Bartlett (This used to be commit 2303e24be74570187b23c3d31d0433263c83ba7e)
2007-10-10r8660: Use templates for the initial provision of user and computer accounts.Andrew Bartlett1-0/+2
This ensures the templating code is used, and also makes it clearer what I need to duplicate in the vampire area. Also fix a silly bug in the template application code (the samdb module) that caused templates to be compleatly unused (my fault, from my commit last night). Andrew Bartlett (This used to be commit 4a8ef7197ff938942832034453f843cb8a50f2d1)
2007-10-10r8650: Use the timestamps and a new objectguid module rather than placingAndrew Bartlett1-5/+14
boilerplate attributes in every entry in provision.ldif. The next step will be to use templates. Andrew Bartlett (This used to be commit 940ed9827f5ab83b668a60a2b0110567dd54c3e2)
2007-10-10r8648: automatically redirect to provisioning if not yet provisioned when theAndrew Tridgell1-0/+21
home page in swat is accessed (This used to be commit 78fb559c08d55c01f5ede81d43cdd857cce8d338)
2007-10-10r8643: - make lp_configfile() work againAndrew Tridgell1-2/+19
- get rid of redundeny dyn_CONFIGFILE argument to lp_load() - fixed provisioning to work with completely pristine install, creating an initial smb.conf is none is present - added lp.set() and lp.reload() to loadparm ejs object interface (This used to be commit c2691ef7126ddcee5f95970b78759b40a049d0a7)
2007-10-10r8640: continue the trend by moving the ejs random calls into an objectAndrew Tridgell1-0/+2
(This used to be commit ed4fb68ef7c28e415408e923bd9eefcd2d60f355)
2007-10-10r8639: moved loadparm calls into an ejs objectAndrew Tridgell1-6/+10
(This used to be commit 2dc493eea6f9d87c40ad0dc755f528ce0b33ca47)
2007-10-10r8603: we have to use the same db name as the rest of smbd uses so the ldb ↵Andrew Tridgell1-1/+1
connect works when already open (This used to be commit 1183f54c8dee28c136b4dc72bc059a6175fe09e4)
2007-10-10r8570: delete all records in the old db when provisioning, rather than usingAndrew Tridgell1-2/+26
sys.unlink(). This allows smbd to see the new db without restarting. (This used to be commit 71004aa165e88f5f448dc7d90ad11dea7143f0df)
2007-10-10r8561: as with the other ejs subsystems, make nss into a objectAndrew Tridgell1-5/+7
(This used to be commit a3f3292e6698ce9be6a5036f47dd4fa81a1dfd4e)
2007-10-10r8558: move newuser logic into the provision.js libAndrew Tridgell1-0/+84
(This used to be commit b6ef32ddd1fdca0d40a12f34fa5f7a484b3c2071)
2007-10-10r8488: after discussions with simo, moved to a full OO interface, so you ↵Andrew Tridgell1-3/+3
don't need to keep a 'db' variable around. The ldb object knows what it is connected to. Added a simple ldb testsuite in testprogs/ldb.js (This used to be commit cf35818648b5b649d0cd25f115a04b7b5b5311aa)
2007-10-10r8486: switched to a separate connection operation in ldb interfaceAndrew Tridgell1-2/+5
(a suggestion from simo) (This used to be commit 98c9c4ecb87e1b140002390067892806464849da)
2007-10-10r8484: switched the sys_*() calls to the OO interfaceAndrew Tridgell1-10/+12
tim, do you want to do the cli_*() calls now? (This used to be commit 9991e924e9dacec663a5d040ccfc878927fc3afa)
2007-10-10r8481: switched ldb ejs called over to an OO interface, so you do:Andrew Tridgell1-1/+3
var ldb = ldb_init(); res = ldb.search(dbfile, "(objectClass=user)"); you can also do: ldbSearch = ldb.search; res = ldbSearch(dbfile, "(objectClass=user)"); if you want the old interface (ie. you can use this to import functions into the global or local namespace). (This used to be commit 3093057d9735cbb62f57e7159264d5a28b85320f)
2007-10-10r8445: if a system doesn't have "nogroup" then try "nobody"Andrew Tridgell1-1/+1
(This used to be commit 433f9d0a619ff34a4b7506950ee091fb8d34870d)
2007-10-10r8372: - split out provisioning logic into a separate ejs libraryAndrew Tridgell1-0/+222
- added a provisioning web page (This used to be commit 7476cb94132cf2849ec19360468904ca6fe8de2c)