freeipa/install
Christian Heimes 9dda004f27 Allow permissions with 'self' bindruletype
Make it possible to create a managed permission with
ipapermbindruletype="self". The ACI will have bind rule
'(userdn = "ldap:///self")'.

Example
-------

Allow users to modify their own fasTimezone and fasIRCNick attributes:

```
managed_permissions = {
    "System: Self-Modify FAS user attributes": {
        "ipapermright": {"write"},
        "ipapermtargetfilter": ["(objectclass=fasuser)"],
        "ipapermbindruletype": "self",
        "ipapermdefaultattr": ["fasTimezone", "fasIRCNick"],
    }
}
```

See: https://github.com/fedora-infra/freeipa-fas/pull/107
Fixes: https://pagure.io/freeipa/issue/8348
Signed-off-by: Christian Heimes <cheimes@redhat.com>
Reviewed-By: Alexander Bokovoy <abokovoy@redhat.com>
Reviewed-By: Rob Crittenden <rcritten@redhat.com>
2020-06-07 10:18:03 +03:00
..
certmonger Do not renew externally-signed CA as self-signed 2020-01-29 21:47:14 +11:00
custodia Replace PYTHONSHEBANG with valid shebang 2019-06-24 09:35:57 +02:00
html Don't fully quality the FQDN in ssbrowser.html for Chrome 2020-02-18 09:15:57 -05:00
migration Use new LDAPClient constructors 2019-02-05 08:39:13 -05:00
oddjob Use /run and /run/lock instead of /var 2020-04-15 18:48:50 +02:00
restart_scripts Don't create log files from help scripts 2019-09-24 15:23:30 +02:00
share Remove obsolete BIND named.conf options 2020-06-05 09:23:57 +02:00
tools Man pages: fix syntax issues 2020-04-16 14:01:03 +02:00
ui Allow permissions with 'self' bindruletype 2020-06-07 10:18:03 +03:00
updates Disable password schema update on LDAP bind 2020-05-11 14:36:39 +02:00
wsgi Add absolute_import future imports 2018-04-20 09:43:37 +02:00
Makefile.am Move Custodia secrets handler to scripts 2019-04-26 12:09:22 +02:00
README.schema Add some basic rules for adding new schema 2010-08-27 13:40:37 -04:00

Ground rules on adding new schema

Brand new schema, particularly when written specifically for IPA, should be
added in share/*.ldif. Any new files need to be explicitly loaded in
ipaserver/install/dsinstance.py. These simply get copied directly into
the new instance schema directory.

Existing schema (e.g. in an LDAP draft) may either be added as a separate
ldif in share or as an update in the updates directory. The advantage of
adding the schema as an update is if 389-ds ever adds the schema then the
installation won't fail due to existing schema failing to load during
bootstrap.

If the new schema requires a new container then this should be added
to install/bootstrap-template.ldif.