1
0
mirror of https://github.com/samba-team/samba.git synced 2025-07-29 15:42:04 +03:00
Commit Graph

247 Commits

Author SHA1 Message Date
31f2cddcf5 Added mmr and olc to the OpenLDAP backend provisioning-scripts
These extensions add mmr (multi-master-replication) and olc
(openldap-online-configuration) capabilities to the
provisioning-scripts (provision-backend and provision.py), for use
with the openldap-backend (only versions >=2.4.15!).

Changes / additions made to the provision-backend  -script:
added new command-line-options:
--ol-mmr-urls=<list of whitespace separated ldap-urls> for use with mmr
(can be combined with --ol-olc=yes),
--ol-olc=[yes/no] (activate automatic conversion from static slapd.conf
to olc),
--ol-slaptest=<path to slaptest binary> (needed in conjunction with
--ol-olc=yes)

Changes / additions made to the provision.py -script: added
extensions, that will automatically generate the chosen mmr and/or olc
setup for the openldap backend, according to the to chosen parameters
set in the provision-backend script

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2009-02-24 21:34:44 +11:00
6b8b7665bd paper over failure to reprovision with os.unlink()
We need to figure out why the deletes on the database fail, but for
now doing an unlink of templates_tdb isn't too bad.

Andrew Bartlett
2009-02-18 17:44:07 +11:00
762fdc8c5c Provide a SamDB TestCase-class that can be used by OpenChange. 2009-02-12 16:00:11 +01:00
7048e75aee Use created loadparm context, rather than the one specified on the command-line. 2009-02-12 15:58:11 +01:00
be9a4157f0 Catch specific exceptions, rather than catching everything, which might hide other exceptions silently. 2009-02-11 19:04:33 +01:00
9e71fef57b Use convenience function for finding setup dir in SaMDB tests. 2009-02-11 18:45:51 +01:00
53b59aa2cf Use convenience function for finding setup_dir based on location of
python module.
2009-02-11 18:44:57 +01:00
ddb4db7c65 Move some samdb-specific code out of provision. 2009-02-11 18:31:52 +01:00
d9e94bf336 Make it possible to override the setup path. 2009-02-11 18:17:00 +01:00
f13895851f Cancel transactions when exceptions are raised. 2009-02-11 17:54:58 +01:00
ebb929779b Remove obsolete samr Python module - use samba.dcerpc.samr instead. 2009-01-22 15:23:32 +01:00
b876478219 Make sure server_role gets initialized in backend provisioning code -
fixes test.
2009-01-19 21:14:37 +01:00
9fa6fb3d9f Print more useful suggestion for the main provision command line 2009-01-19 12:39:57 +11:00
673ca5145c Find default smb.conf path correctly, when it was not specified on the
command-line.
2009-01-16 15:05:15 +01:00
447f266887 Only do special DN tracking for normal DNs in OpenLDAP backend.
This means trying (again, harder), not to do this for DN+Binary and
DN+String attributes.

Andrew Bartlett
2009-01-09 12:08:11 +11:00
05f97d3235 Fix typo 2009-01-06 16:23:29 +01:00
d22adc14a9 More work to have OpenLDAP accept the full AD schema
We need to avoid handling DN+Binary and DN+String with the refint
module for now, as this is a currently unsupported syntax.

Also rename entryTTL to avoid a conflict with the operational
attribute of the same name.

Andrew Bartlett
2009-01-05 12:38:47 +11:00
00b61ff2cf samba.tests.samdb: Fix test after merger of samba.security and
samba.dcerpc.security
2008-12-23 11:44:10 +01:00
2227860a79 Fix more tests, improve repr() functions for various Python types. 2008-12-21 23:05:35 +01:00
7e651c7ef3 Simplify customization of pidl-generated Python modules. 2008-12-21 21:10:40 +01:00
a32194033a Move tests for ParamFile. 2008-12-21 16:39:17 +01:00
676919872d Provide simple Python replacement for ParamFile, which currently exists
with a lot of overhead.
2008-12-21 15:55:23 +01:00
6efb7ff981 Fix various Python-related bugs. 2008-12-21 07:34:27 +01:00
eeb25cf548 Fix more introduced regressions in new bindings. 2008-12-21 04:36:16 +01:00
2e7a6cb6bf py: Fix initialisation of subtypes, fix segfaults. 2008-12-21 03:08:14 +01:00
0d585a67ed Support subtypes of ldb.Ldb. 2008-12-20 23:00:23 +01:00
5076c64d43 Merge branch 'master' of ssh://git.samba.org/data/git/samba 2008-12-19 21:47:45 +01:00
6998ef4fe0 Avoid use of parentheses in Python import statements, as it's not supported by Python2.3. 2008-12-19 21:47:31 +01:00
f52fc2f90e Move aggregate schema stub to it's own file
This should make it easier to import just the schema entries from the
WSPP docs.

Andrew Bartlett
2008-12-19 09:51:42 +11:00
21702bfcde Cope with slight changes in tdb API. 2008-12-18 20:43:05 +00:00
61a2d5c878 Use plain Python C API for registry module, rather than SWIG. 2008-12-18 16:49:33 +00:00
7a5b6a2ea1 Handle different failure modes when we wipe the db in provision
We didn't handle the mode where we can't load the main sam.ldb due to
the modules being 'wrong', and when we did remove the file, we didn't
wipe the partitions.
2008-12-18 17:17:56 +11:00
ebe1e923c8 s4:provision: use extended_dn_out_ldb or extended_dn_out_dereference depending on the backend
This just changes the existing stratagy of loading different modules
for the OpenLDAP backend to also include extended_dn_out_*

When we provision the OpenLDAP backend, we make sure to include the
'deref' overlay (which must be made available by the OpenLDAP build)

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:28 +11:00
1f28541a24 s4:dsdb: split extended_dn into extended_dn_in, extended_dn_out and extended_dn_store.
By splitting the module, the extended_dn_in and extended_dn_store
moudles can use extended_dn_out to actually get the extended DN.  This
avoids code duplication.

The extended_dn_out module also contains a client implementation of
the OpenLDAP dereference control (draft-masarati-ldap-deref-00).

This also introduces a new control
'DSDB_CONTROL_DN_STORAGE_FORMAT_OID' to ask the extended_dn_out module
to return whatever the 'storage format' is.  This allows us to work
with both OpenLDAP (which performs a dereference at run time) and LDB
(which stores the GUID and SID on disk).

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:28 +11:00
6069407ed1 Fix rpcecho test. 2008-10-21 14:23:42 +02:00
e549759efe Fix blackbox tests on IPv6-only hosts. 2008-10-20 10:18:02 +02:00
fc54ca014b Move the password_hash module up the module stack.
This makes it operate in all partitions (minor), but more importantly
places it above some other modules that implement some extra schema
checks.  (The linked_attributes module objects to unknown attributes,
which inclues clearTextPassword, which we need internally but is not
in the schema).

Andrew Bartlett
2008-10-16 12:31:19 +11:00
7f1c02cd7a Enable winreg Python tests - authentication works now. 2008-09-30 15:24:46 +02:00
fae2fce47e s4:provision: don't do the full provision in the become_dc
metze
2008-09-27 02:12:22 +02:00
ef9169bfa6 Make it clear that the MMR password can differ from the admin passsword
In the future, we might simply randomly generate this, or allow the
admin to specify it seperate to the admin password.  However, both are
highly sensitive, as they imply read access to the krbtgt.

Andrew Bartlett
(This used to be commit 57d19ad002)
2008-09-08 15:09:06 +10:00
b76f383eef Use DIGEST-MD5 authentication for OpenLDAP replication
This avoids passing rootdn passwords or replicated data in cleartext
across the network.

Signed-of-by: Andrew Bartlett <abartlet@samba.org>
(This used to be commit 67373c143a)
2008-09-08 14:39:54 +10:00
9817f3d785 Add a setexpiry operation in samdb.py
This makes it easy to set the expiry (or no expiry) for a samdb user
(This used to be commit 25171f18a4)
2008-08-30 07:32:44 +10:00
8237c0ba83 The index handling is now configured from the schema load, not by a
template.

Andrew Bartlett
(This used to be commit b36c6a21ad)
2008-08-21 12:59:16 +10:00
41493cbe68 Update OpenLDAP MMR configuration per comments by Oliver Liebel
<oliver@itc.li>

This changes the RIDs to be <serverID><DBID>, to ease later debugging.

The need to specify the port on the MMR URLs is now included in the
help.

Andrew Bartlett
(This used to be commit a5cbe8c09c)
2008-08-20 12:21:36 +10:00
b33f4541f6 Merge branch 'v4-0-test' of ssh://git.samba.org/data/git/samba into 4-0-abartlet
(This used to be commit fc6b4f03eb)
2008-08-19 14:11:51 +10:00
7ef21658fb Fix up new OpenLDAP MMR code.
This changes the MMR password from hard-coded value of 'linux',
adds tests and fixes the Fedora DS backend.

Currently the MMR password matches the admin password, but we can
change this to be another random value if required.

Also require the port to be specified on the command line, so we don't
hard-code a port of 9000.

Andrew Bartlett
(This used to be commit 08257c6d6c)
2008-08-19 14:10:14 +10:00
805dd85291 Generate Multi-Master Replication configuration for OpenLDAP
This patches provision-backend and the related scripts to generate the
correct configuration blobs for N-way multi-master replication using
OpenLDAP.

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
(This used to be commit 6ed0b3f247)
2008-08-19 12:03:04 +10:00
47d80366be Fix templates.ldb reprovision handling.
This sets the attributes in a seperate transaction, and allows a
forced delete of the whole file.

Andrew Bartlett
(This used to be commit 423db2468b)
2008-08-19 11:43:41 +10:00
47124efe42 Add helper object Hostconfig to make it easier to get to e.g. the
SAM database.
(This used to be commit be75b2a36e)
2008-08-01 21:12:37 +02:00
1c94f3e95d Use new style python classes.
(This used to be commit 2a39aae0ce)
2008-08-01 21:00:09 +02:00