1
0
mirror of https://github.com/samba-team/samba.git synced 2025-07-15 16:59:09 +03:00
Commit Graph

135 Commits

Author SHA1 Message Date
8959af0a6f r25950: Enable seperate module to prevent subtree deletes.
Andrew Bartlett
(This used to be commit a71414ec3e)
2007-12-21 05:45:15 +01:00
3f2ca10d2d r25940: Rework the samldb and templates handling.
Templates just don't belong in the sam.ldb, as they don't obey any of
the other rules.  This moves them to a seperate templates.ldb.

In samldb, this patch reworks the duplicate SID and Name detection
code, to use ldb_search_exp_fmt() rather than gendb_search.  This
returns far more useful errors, which we now handle and report better.

The call to samdb_search_for_parent_domain() has been moved in samldb,
to allow both the account and SID uniqueness checks to be in the same
domain.  This function also returns better errors.

dcesrv_drsuapi.c is updated for the new prototype of
samdb_search_for_parent_domain()

Andrew Bartlett
(This used to be commit f1ab90c88c)
2007-12-21 05:45:10 +01:00
6c41194961 r25936: provision/newuser: don't try to set the 'memberOf' attribute
metze
(This used to be commit c6d959e52c)
2007-12-21 05:45:09 +01:00
716391f106 r25921: Now also listen on ldapi by default in the LDAP server
Create a phpLDAPadmin configuration file example to use ldapi to talk
to Samba4

Andrew Bartlett
(This used to be commit 54f4c8ba61)
2007-12-21 05:45:03 +01:00
16d0395047 r25750: Update the objectclass module to improve consistency in Samba4.
The aim here is to ensure that if we have

CN=Users,DC=samba,DC=example,DC=com

that we cannot have a DN of the form

cn=admin ,cn=useRS,DC=samba,DC=example,DC=com

This module pulls apart the DN, fixes up the relative DN part, and
searches for the parent to copy the base from.

I've used the objectclass module, as I intend to also validate the
placement of child objects, by reading the allowedChildClasses virtual
attribute.

In the future, I'll also force the attribute names to be consistant
(using the case from the schema).

Andrew Bartlett
(This used to be commit c0a0c69ac5)
2007-12-21 05:43:43 +01:00
7c721a1f49 r25747: Implement linked attributes, for add operations.
Much more work is still required here, particularly to handle this
better during the provision, and to handle modifies and deletes, but
this is a start.

Andrew Bartlett
(This used to be commit 2ba99d58e9)
2007-12-21 05:43:41 +01:00
4bb52bfcb7 r25694: Move subtree_rename above the partitions module. The next step is to
built a linked_attributes module under this.

Andrew Bartlett
(This used to be commit 4f47e687e5)
2007-12-21 05:43:17 +01:00
21c65d93eb r25693: Implement the rest of subtree renames, now that tridge waved his magic
over the ldb_tdb part of the problem.

Andrew Bartlett
(This used to be commit daca0cfd2f)
2007-12-21 05:43:17 +01:00
62078f17ba r25691: make "server role" case insensitive
(This used to be commit f61a9b7068)
2007-12-21 05:43:15 +01:00
db6c6cfdec r25383: Patch from Amin Azez <azez@ufomechanic.net> to give better message
when a template file is missing.

Andrew Bartlett
(This used to be commit 5093ea1cef)
2007-10-10 15:07:22 -05:00
bd4dc88e7b r25304: Thankyou to Amin Azez <azez@ufomechanic.net> for pointing out that I
used subobj.ROLE and not subobj.SERVERROLE as the rest of the code
does.

Andrew Bartlett
(This used to be commit dd1cb33591)
2007-10-10 15:07:10 -05:00
ee257e902a r25299: Modify the provision script to take an additional argument: --server-role
This must be set to either 'domain controller', 'domain member' or 'standalone'.

The default for the provision now changes to 'standalone'.

This is not because Samba4 is particularlly useful in that mode, but
because we still want a positive sign from the administrator that we
should advertise as a DC.

We now do more to ensure the 'standalone' and 'member server'
provision output is reasonable, and try not to set odd things into the
database that only belong for the DC.

Andrew Bartlett
(This used to be commit 4cc4ed7719)
2007-10-10 15:07:09 -05:00
15c1801a5c r25051: Move SWAT back to the old-style form-submit modal.
The Web 2.0, async client tools were really interesting, but without
developer backing they remain impossible to support into a release.

The most interesting app was the LDB browser, and I intend to replace
this with phpLdapAdmin, preconfigured for Apache during provision.

This also removes the need to 'compile' SWAT on SVN checkouts.

Andrew Bartlett
(This used to be commit cda965e908)
2007-10-10 15:05:50 -05:00
ced6fc995f r24911: Make better use of substituted variables in example named.conf
Andrew Bartlett
(This used to be commit 9f18a97117)
2007-10-10 15:03:36 -05:00
50017a0075 r24793: The subtree_rename module is a work of fiction. An resemblance to a
working module, live or dead, is purely co-incidental.

Andrew Bartlett
(This used to be commit 64cc31642f)
2007-10-10 15:03:10 -05:00
4e1d0cc8e3 r24761: Permit subtree renames in Samba4.
The module is scary: On a rename, it does a search for all entries
under that entry (including itself), and fires off a seperate rename
call for each result.  This will fail miserably on an LDAP backend,
but I'll need to work on using hdb for OpenLDAP, and hope Fedora DS
can implement subtree renames at some point.

Andrew Bartlett
(This used to be commit 13908a8cb4)
2007-10-10 15:03:05 -05:00
f681306335 r24760: Ensure we base64 encode any password being put into LDIF, to avoid
provision failures when some of the random password values are illigal
LDIF.

Andrew Bartlett
(This used to be commit 876003f6c6)
2007-10-10 15:03:05 -05:00
73388ce54c r24729: First try and publishing a DNS service account, for folks to play with.
The keytab in dns.keytab should (I hope) do the job.

Andrew Bartlett
(This used to be commit af4d331eef)
2007-10-10 15:02:58 -05:00
2edf63b6d6 r24703: Use standard registry diff files when provisioning rather than
LDIF files for the registry files.
(This used to be commit 67ad556b73)
2007-10-10 15:02:50 -05:00
2da0be9d5e r24640: Add a suggested BIND configuration snippit, to help with DNS configuration.
When we sort out GSS-TSIG on the server, we can expand this to have
the 'right stuff'.

Andrew Bartlett
(This used to be commit 8f02ade1b2)
2007-10-10 15:02:28 -05:00
d1bfe56048 r23907: Fix bug 4790 reported by mwallnoefer@yahoo.de:
Before the provisioning enters to the function provision_default_paths (in
scripting/libjs/provision.js), the variable subobj.DNSDOMAIN isn't properly set
(for example for the filename of the DNS zonefile).

Andrew Bartlett
(This used to be commit 07a9db1438)
2007-10-10 15:01:09 -05:00
d9a5e18ce0 r23875: As pointed out by mwallnoefer@yahoo.de:
On default Active Directory installations, the NETLOGON share isn't
an indipendent directory. In fact it's mapped to the subdirectory
"scripts" from the share SYSVOL under <Domain name>.

Andrew Bartlett
(This used to be commit 923d67ea9d)
2007-10-10 15:01:06 -05:00
10f6e16573 r23859: Work to have Group Policy work 'out of the box' in Samba4.
This involves creating the SYSVOL and NETLOGON shares at provision
time, and creating the right subdirectories.

This also changes the behaviour of lp.get("foo") in ejs - we now
return undefined, rather than syntax error, if the parameter doesn't
exist (perhaps because the share isn't defined).

Andrew Bartlett
(This used to be commit 45cadf3bc0)
2007-10-10 15:01:05 -05:00
967866f170 r23720: Allow the member server to work against an LDAP Backend. Another case
where LDB isn't as strict as OpenLDAP, the self join record contains
duplicate servicePrincipalNames once the DNS name and domain name are
made equal.  (Easier to just skip the useless self-join).

Andrew Bartlett
(This used to be commit 49ff929be6)
2007-10-10 14:59:08 -05:00
90b49dc520 r23717: We need to remove the _ in LDAP_MANAGERPASS for the
--ldap-manager-pass= option to work.

Andrew Bartlett
(This used to be commit fbcb1ec141)
2007-10-10 14:59:07 -05:00
97172e1120 r23716: Clarify LDAP Manager DN and fix slapd startup syntax.
Andrew Bartlett
(This used to be commit 17dad5d8c3)
2007-10-10 14:59:06 -05:00
c37cfae81e r23715: Make the provision-backend script print out the exact commands to run,
to set up the LDAP backend.

Andrew Bartlett
(This used to be commit cc7900210a)
2007-10-10 14:59:06 -05:00
3a78f7323a r23703: Start to get Samba4 to again work with LDAP backends, after I turned
on metze's schema work.

Andrew Bartlett
(This used to be commit 3111bbdf64)
2007-10-10 14:59:06 -05:00
e9d19477e4 r23560: - Activate metze's schema modules (from metze's schema-loading-13 patch).
- samba3sam.js: rework the samba3sam test to not use objectCategory,
  as it's has special rules (dnsName a simple match)
- ldap.js: Test the ordering of the objectClass attributes for the baseDN
- schema_init.c: Load the mayContain and mustContain (and system...) attributes when
  reading the schema from ldb
- To make the schema load not suck in terms of performance, write the
  schema into a static global variable
- ldif_handlers.c: Match objectCategory for equality and canonicolisation
  based on the loaded schema, not simple tring manipuation
- ldb_msg.c: don't duplicate attributes when adding attributes to a list
- kludge_acl.c: return allowedAttributesEffective based on schema results
  and privilages

Andrew Bartlett
(This used to be commit dcff83ebe4)
2007-10-10 14:53:27 -05:00
7f2709b397 r23361: Merge from SAMBA_4_0_RELEASE:
Print the smb.conf path being created in provision.

Andrew Bartlett
(This used to be commit bb583463bf)
2007-10-10 14:53:11 -05:00
815cf409eb r23351: Merge from SAMBA_4_0_RELEASE:
Fix a nasty issue we had with SWAT.  We could not provision into a
different domain, as we didn't re-calcuate the DOMAINDN after the user
changed it in the form.

Andrew Bartlett
(This used to be commit 430c998dc9)
2007-10-10 14:53:11 -05:00
6e68fe69ea r23264: Make it more clear what this is actually setting up
(This used to be commit f687bc92ae)
2007-10-10 14:53:07 -05:00
86a4886e39 r23189: Work towards a totally scripted setup of LDAP backends, so others can
easily try this out.

I also intend to use this for the selftest, but I'm chasing issues
with the OpenlDAP (but not Fedora DS) backend.

Andrew Bartlett
(This used to be commit 0f457b1d2e)
2007-10-10 14:53:02 -05:00
5fb459e4fa r23177: Add in a new provision-backend script. This helps set up the OpenLDAP or Fedora DS backend.
This required a new mkdir() call in ejs.

We can now provision just the schema for ad2oLschema to operate on
(with provision_schema(), without performing the whole provision, just
to wipe it again (adjustments to 'make test' to come soon).

Andrew Bartlett
(This used to be commit 01d54d13dc)
2007-10-10 14:53:00 -05:00
d21bfc05ef r23032: Remove calls to println(), and ensure we print the ldb errstring().
Andrew Bartlett
(This used to be commit 5b6f704b24)
2007-10-10 14:52:42 -05:00
7bdc1a8ec9 r23012: we need a POLICYGUID in provision
(This used to be commit b9f8650b20)
2007-10-10 14:52:39 -05:00
112728c651 r22756: Make it easier to setup an LDAP replica. Provision with
--partitions-only (suggestions for a better name welcome) will setup
the partitions records, but no any data in those partitions.  This can
then point at the already configured remote LDAP server.

Andrew Bartlett
(This used to be commit ee7b06fc83)
2007-10-10 14:52:15 -05:00
3d4c4c5fa3 r22478: Update the LDAP backend code to handle initialisation of multiple
partitions onto the target LDAP server.

Make the LDAP provision run before smbd starts, then stop the LDAP
server.  This ensures this occurs synchronously, We then restart it
for the 'real run' (with slapd's stdin being the FIFO).

This required fixing a few things in the provision scripts, with more
containers being created via a add/modify pair.

Andrew Bartlett
(This used to be commit 860dfa4ea1)
2007-10-10 14:51:31 -05:00
28884a1cab r21513: I don't know how long this has been wrong, but fix this up so we can
re-provision (as is required for the TEST_LDAP=yes version of make
test).

Andrew Bartlett
(This used to be commit ea4c2ea22f)
2007-10-10 14:48:48 -05:00
7ca399c075 r21351: Change ldb ejs bindings return codes.
We were returning just true/false and discarding error number and string.

This checking probably breaks swat, will fix it in next round as swat
is what made me look into this as I had no way to get back error messages
to show to the users.

Simo.
(This used to be commit 35886b4ae6)
2007-10-10 14:48:18 -05:00
9e4a5cbe29 r21294: this is useless, now that there's no operation in between...
metze
(This used to be commit 838d307e6c)
2007-10-10 14:48:03 -05:00
744dddd75b r21135: Instead of having hooks to update keytabs as an explicit thing, update
them as a hook on ldb modify, via a module.

This should allow the secrets.ldb to be edited by the admin, and to
have things update in the on-disk keytab just as an in-memory keytab
would.

This isn't really a dsdb plugin, but I don't have any other good ideas
about where to put it.

Andrew Bartlett
(This used to be commit 6ce557a1af)
2007-10-10 14:44:31 -05:00
91ee0709b2 r20953: add templates in provision_become_dc()
metze
(This used to be commit 306ea74f85)
2007-10-10 14:44:01 -05:00
5d8700c53c r20922: use the show_deleted module by default
metze
(This used to be commit edc37501d6)
2007-10-10 14:43:52 -05:00
9f802707d8 r20806: make it possible to configure the secrets.ldb url
via "secrets database = my_secrets.ldb"

metze
(This used to be commit a096a97415)
2007-10-10 14:43:33 -05:00
03d2647bd0 r20805: don't use hardcoded values for secrects.keytab and sam.ldb
metze
(This used to be commit c78e345fea)
2007-10-10 14:43:32 -05:00
bd96c74e14 r20683: load indexes before applying replicated objects,
as for every object the repl_meta_data module needs to look
up the object by objectGUID

metze
(This used to be commit 55f845377c)
2007-10-10 14:40:21 -05:00
b31875ba75 r20575: apply records to the test_samdb.ldb (my birthday present to myself...:-)
we need to modify some modules to only handle originating changes...

metze
(This used to be commit 0f387d58e6)
2007-10-10 14:37:05 -05:00
46908530bc r20572: - prepare a test_samdb.ldb in the NET-API-BECOME-DC torture test
- we call a ejs script from the torture test for this task
  so that we can use the provision template ldif's.

metze
(This used to be commit e84b0c7d40)
2007-10-10 14:37:03 -05:00
d0e221c4e0 r20568: split out the rootdse ldif
and set the isSyncronized = TRUE when we done

metze
(This used to be commit 5875ce1ac6)
2007-10-10 14:37:02 -05:00