1
0
mirror of https://github.com/samba-team/samba.git synced 2025-11-11 00:23:51 +03:00
Commit Graph

149 Commits

Author SHA1 Message Date
Simo Sorce
1fcf725bc0 r18316: Build the parent too 2007-10-10 14:18:07 -05:00
Andrew Bartlett
befac43f59 r17982: One final hack...
When against a real, schema-checking LDAP backend, we need
extensibleObject on the baseDN entry (as entryUUID isn't run for
creating this basic ldif) output.
2007-10-10 14:17:01 -05:00
Simo Sorce
43e95f4572 r17926: add trustedDomain class 2007-10-10 14:16:54 -05:00
Andrew Bartlett
32996ca9d6 r17876: Require one less patch for the LDAP backend to work.
This lets the modules or backend generate the host and domain GUID,
rather than the randguid() function.  These can still be specified
from the command line.

Andrew Bartlett
2007-10-10 14:16:50 -05:00
Simo Sorce
4975659fd7 r17839: do not reference possibleInferiors we have not extracted
trim duplicate may attributes
2007-10-10 14:16:47 -05:00
Andrew Bartlett
3bb0a0d91e r17705: Use the paged_searches module by default against the LDAP backend, if
selected.

Andrew Bartlett
2007-10-10 14:16:28 -05:00
Andrew Bartlett
0e97b71386 r17682: Add newline to end of file 2007-10-10 14:16:23 -05:00
Simo Sorce
74c40719f2 r17662: some more enhancements to our schema extraction tool,
with a nasty hack in minschema.js that I really hate
2007-10-10 14:16:21 -05:00
Simo Sorce
aca800bdcc r17653: fix typo 2007-10-10 14:16:20 -05:00
Simo Sorce
425fda84e2 r17652: add oMSyntax to these attributes 2007-10-10 14:16:20 -05:00
Simo Sorce
09a3272611 r17651: Commit the set of classess used to generate our schema
and update the schema with the latest additions
2007-10-10 14:16:20 -05:00
Andrew Bartlett
cb2b9d800d r17600: Finish the schema conversion tool, and add a mapping file, used to map
OIDs and skip built-in attributes.

Andrew Bartlett
2007-10-10 14:16:16 -05:00
Andrew Bartlett
dec2b6961a r17528: This is an additional item of schema we require.
Where is the script we used to create this schema file in the first
place?

Andrew Bartlett
2007-10-10 14:15:33 -05:00
Andrew Bartlett
af02b4d7c6 r17526: Move timestamp generation into the objectGUID module. It probably
needs to be renamed (operation_add?).

This allows me to match the behaviour and substitute with the
entryUUID module for remote LDAP connections.

Andrew Bartlett
2007-10-10 14:15:33 -05:00
Simo Sorce
d57b521aad r17504: Do not use the invented unixID but use the rfc2307 uidNumber and gidNumber attributes instead
Do not change unixName right now, we don't have an attribute to use in the posixGroup class,
and I think we should remove its usage altogether and look up users and groups by their uid/gid only.

Simo.
2007-10-10 14:15:30 -05:00
Andrew Bartlett
009d090594 r17499: Open the main database only the minimum times during a provision.
This causes things to operate as just one transaction (locally), and
to make a minimum of TCP connections when connecting to a remote LDAP
server.

Taking advantage of this, create another file to handle loading the
Samba4 specific schema extensions.  Also comment out 'middleName' and
reassign the OID to one in the Samba4 range, as it is 'stolen' from a
netscape range that is used in OpenLDAP and interenet standards for
'ref'.

Andrew Bartlett
2007-10-10 14:15:30 -05:00
Andrew Bartlett
d942a8b2b6 r17377: This attribute is maintained by the modules, don't override it.
Andrew Bartlett
2007-10-10 14:15:20 -05:00
Andrew Bartlett
ab355e1f5f r17352: Don't do a modify on the objectClasses, as OpenLDAP doesn't like
this.  Instead, handle this one in the add.

Andrew Bartlett
2007-10-10 14:15:18 -05:00
Andrew Bartlett
b1d061d36a r17351: Remove extra LDB partition we don't actually use (these are in the
main database, under cn=templates).

Andrew Bartlett
2007-10-10 14:15:18 -05:00
Andrew Bartlett
31225b9cb6 r17330: Enable the partitions module.
This module redirects various samdb requests into different modules,
depending on the prefix.  It also makes moving to an LDAP backend
easier, as it is just a different partition backend.

This adds yet another stage to the provision process, as we must setup
the partitions before we setup the magic attributes.

Andrew Bartlett
2007-10-10 14:15:15 -05:00
Simo Sorce
d4c2b89350 r17208: Add a away to test the ldb module.
Actually you can't test both classic and ldb together, but you can replace the standard
script/tests/mktestsetup.sh file with this one and run make test to see share_ldb in action
2007-10-10 14:10:19 -05:00
Andrew Bartlett
8d05827966 r16768: Add a simple script to set a user's password. This should grow into a
real smbpasswd command some day.

Andrew Bartlett
2007-10-10 14:09:44 -05:00
Andrew Bartlett
b49a4fbb57 r16264: Add, but do not yet enable, the partitions module.
This required changes to the rootDSE module, to allow registration of
partitions.  In doing so I renamed the 'register' operation to
'register_control' and 'register_partition', which changed a few more
modules.

Due to the behaviour of certain LDAP servers, we create the baseDN
entry in two parts: Firstly, we allow the admin to export a simple
LDIF file to add to their server.  Then we perform a modify to add the
remaining attributes.

To delete all users in partitions, we must now search and delete all
objects in the partition, rather than a simple search from the root.
Against LDAP, this might not delete all objects, so we allow this to
fail.

In testing, we found that the 'Domain Controllers' container was
misnamed, and should be 'CN=', rather than 'OU='.

To avoid the Templates being found in default searches, they have been
moved to CN=Templates from CN=Templates,${BASEDN}.

Andrew Bartlett
2007-10-10 14:09:09 -05:00
Andrew Bartlett
81f3cd1c45 r16166: Remove hexidecimal constants from the Samba4 provision files.
This change is required for compatibility with the OSX client, in
particular, but returning 0x80000002 rather than -2147483646 violates
what LDAP clients expect in general.

Andrew Bartlett
2007-10-10 14:09:03 -05:00
Andrew Bartlett
954785db03 r16082: Index objectCategory like objectClass, as it is searched on a lot.
Andrew Bartlett
2007-10-10 14:08:57 -05:00
Andrew Bartlett
f72079029a r16028: Re-add the objectclass module, in the new async scheme.
Add a test to show that we need this, and to prove it works (for add
at least).

Andrew Bartlett
2007-10-10 14:08:51 -05:00
Simo Sorce
51083de795 r15942: Remove the sync internal ldb calls altogether.
This means that some modules have been disabled as well as they
have not been ported to the async interface

One of them is the ugly objectclass module.
I hope that the change in samldb module will make the MMC happy
without the need of this crappy module, we need proper handling
in a decent schema module.

proxy and ldb_map have also been disabled
ldb_sqlite3 need to be ported as well (currenlty just broken).
2007-10-10 14:08:43 -05:00
Simo Sorce
8b2a563e71 r15795: Try to use the async code by default
It passess all my tests, but I still need to work on a lot of stuff.
Shouldn't impact anybody else work, so I want to commit now and see what happens

Will work to remove the old code from modules and backends soon, and make some
more restyling in ldb internals.

So, if there is something you don't like in this desgin please speak now.

Simo.
2007-10-10 14:08:21 -05:00
Andrew Tridgell
2adcd4ff4e r15518: the 'password' option in POPT_COMMON_CREDENTIALS was conflicting with
the password option in newuser. Move the local options above the
global options to fix.
2007-10-10 14:05:45 -05:00
Andrew Bartlett
a79a185b6a r14313: Add comments describing some of the dependencies here.
Andrew Bartlett
2007-10-10 13:57:11 -05:00
Andrew Bartlett
0859ba59ae r14200: Now we have real USN support, don't force the values in the provision
scripts.

This tests the real module, and avoids duplication.

Andrew Bartlett
2007-10-10 13:56:59 -05:00
Andrew Bartlett
e1b346b8e0 r13907: By ordering things this way, we allow the password_hash module to set
the pwdLastSet time on new users (with passwords) correctly.

Andrew Bartlett
2007-10-10 13:52:22 -05:00
Simo Sorce
3fb9571a76 r13369: let's have a way to show the samba4 version through ejs
and use it in provisioning to fullfill rfc 3045 requirements
2007-10-10 13:51:50 -05:00
Andrew Bartlett
7de385dca4 r13320: Fix kpasswd's use of the local HDB. /dev/null was a bad idea, we want
'no filename' instead.

Andrew Bartlett
2007-10-10 13:51:43 -05:00
Andrew Bartlett
2b605cf22c r13239: Silly little patch: make the order of declaration match the order of use. 2007-10-10 13:51:36 -05:00
Andrew Bartlett
849500d1aa r13107: Follow the lead of Heimdal's kpasswdd and use the HDB (hdb-ldb in our
case) as the keytab.

This avoids issues in replicated setups, as we will replicate the
kpasswd key correctly (including from windows, which is why I care at
the moment).

Andrew Bartlett
2007-10-10 13:51:26 -05:00
Andrew Tridgell
95e90169f4 r13097: move the creation of the default sam name -> unix name mappings into
the main provision logic, so it can also be used as part of the
vampire process
2007-10-10 13:51:24 -05:00
Jelmer Vernooij
e6aa4e92f0 r13063: Add --realm option to upgrade 2007-10-10 13:51:20 -05:00
Andrew Bartlett
701558b5fe r12945: Try to move closer to getting Samba3 import working again.
There still a few things to work out

Andrew Bartlett
2007-10-10 13:51:12 -05:00
Andrew Bartlett
916607d1d0 r12944: Update scripts in setup to match changes in the provision.js
DNS is now done as a seperate step, to assist in migrations.

Andrew Bartlett
2007-10-10 13:51:11 -05:00
Andrew Bartlett
ffe9042e15 r12943: Generate a SID for the domain join account using the modules, rather
than a hardcoded SID.

Fix the samldb module to return the what *was* the nextrid, rather
than the new nextrid (that is for next time).

Andrew Bartlett
2007-10-10 13:51:11 -05:00
Simo Sorce
900f4fd343 r12941: Add Attribute Scoped Search control
want to see what it does ?

do aq make test and try:
./bin/ldbsearch -H st/private/sam.ldb --controls=asq:1:member -s base -b 'CN=Administrators,CN=Builtin,DC=samba,DC=example,DC=com' 'objectclass=*'

have fun.
simo.
2007-10-10 13:51:11 -05:00
Simo Sorce
fa1ae9a44b r12905: add some ldap policies
not yet enforced except for the initial connection timeout
2007-10-10 13:51:01 -05:00
Andrew Bartlett
1fbe09ce81 r12762: Simo correctly asked that the policy logic (which attributes contain
passwords) be moved into the database, and not be hard-coded in the
module source.

Andrew Bartlett
2007-10-10 13:49:51 -05:00
Andrew Bartlett
42cdad5e3f r12749: Fix the newuser script.
Andrew Bartlett
2007-10-10 13:49:49 -05:00
Andrew Bartlett
be9d0cae89 r12746: An initial version of the kludge_acls module.
This should be replaced with real ACLs, which tridge is working on.
In the meantime, the rules are very simple:

- SYSTEM and Administrators can read all.

- Users and anonymous cannot read passwords, can read everything else

- list of 'password' attributes is hard-coded

Most of the difficult work in this was fighting with the C/js
interface to add a system_session() all, as it still doesn't get on
with me :-)

Andrew Bartlett
2007-10-10 13:49:48 -05:00
Simo Sorce
4c685ac0d1 r12745: Initial work to support a syntax to pass over controls via
command line to ldbsearch. Very rough work, no checks are
done on the input yet (will segfault if you make it wrong).
Controls are passed via the --controls switch an are comma
separated (no escaping yet).

General syntax is <ctrl_name>:<criticality>
<ctrl_name> is a string
<criticality> is 1 or 0

Current semi-parsed controls are:

server_sort
syntax: server_sort:1:0:attributename

	1st parm: criticality
	2nd parm: reversed
	3rd parm: attribute name to be used for sorting

todo:	still missing suport for multiple sorting
	  attributes and ordering rule
	no check on result code

paged_results
syntax: paged_results:1:100

	1st parm: criticality
	2nd parm: number of results to be returned

todo:	ldbsearch will return only the first batch
	  (missing code to cycle over conditionally)
	no check on result code

extended_dn
syntax: extended_dn:1:0

	1st parm: criticality
	2nd parm: type, see MS docs on meaning

Simo.
2007-10-10 13:49:48 -05:00
Andrew Bartlett
b349d2fbfe r12739: Add support for using credentials in the provision process.
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
2007-10-10 13:49:48 -05:00
Andrew Bartlett
8e608dd4bf r12720: By metze's request, rename the ntPwdHistory attribute to
sambaNTPassword.  Likewise lmPwdHistory -> sambaLMPwdHistory.

The idea here is to avoid having conflicting formats when we get to
replication.  We know the base data matches, but we may need to use a
module to munge formats.

Andrew Bartlett
2007-10-10 13:49:45 -05:00
Andrew Bartlett
097d9d0b7f r12719: Rename unicodePwd -> sambaPassword.
Because we don't know the syntax of unicodePwd, we want to avoid using
that attribute name.  It may cause problems later when we get
replication form windows.

I'm doing this before the tech preview, so we don't get too many
supprises as folks upgrade databases into later versions.

Andrew Bartlett
2007-10-10 13:49:45 -05:00