SLAPACL(8C)
π SLAPACL π
okay so bestie, this is the slapacl page from section 8C of the manual, and honestly? it's giving access-control detective energy. let's get into it π΅οΈβοΈβ¨
β¨ NAME β¨
slapacl β check access to a list of attributes. that's it, that's the whole job, and she does it flawlessly π
πΈ SYNOPSIS πΈ
/usr/bin/slapacl -b DN [-d debug-level] [-D authcDN | -U authcID]
[-f slapd.conf] [-F confdir] [-o option[=value]] [-u] [-v] [-X authzID |
-o authzDN=DN] [attr[/access][:value]] [...]
π¦ DESCRIPTION π¦
so like, slapacl is the little sister of slapd(8) whose whole personality is verifying stuff. she checks the behavior of slapd(8) by verifying access to directory data according to the access control list directives defined in its configuration. no cap π₯
here's the pipeline, step by step:
- she opens the
slapd.conf(5)configuration file or theslapd-config(5)backend - she reads in the
access/olcAccessdirectives - then she parses the attr list you gave her on the command-line
and if you give her no attr list at all? she just tests access to the entry pseudo-attribute. iconic default behavior tbh π
β¨ OPTIONS β¨
-b DNβ specify the DN which access is requested to; the corresponding entry is fetched from the database, and thus it must exist. the DN is also used to determine what rules apply; thus, it must be in the naming context of a configured database. by default, the first database that supports the requested operation is used. See also-u. π«Ά-d debug-levelβ enable debugging messages as defined by the specified debug-level; seeslapd(8)for details. (aka: turn on the yapping, but make it useful β¨)-D authcDNβ specify a DN to be used as identity through the test session when selecting appropriate<by>clauses in access lists. it's giving "who am i pretending to be today" energy π-f slapd.confβ specify an alternativeslapd.conf(5)file.-F confdirβ specify a config directory. now listen carefully bestie because this one has lore π: if both-fand-Fare specified, the config file will be read and converted to config directory format and written to the specified directory. if neither option is specified, an attempt to read the default config directory will be made before trying to use the default config file. if a valid config directory exists then the default config file is ignored. (she checks the cool new place first, periodt π)-o option[=value]β Specify an option with a(n optional) value. the possible generic options/values are:
syslog=<subsystems> (see `-s' in slapd(8))
syslog-level=<level> (see `-S' in slapd(8))
syslog-user=<user> (see `-l' in slapd(8))
and the possible options/values specific to slapacl are:
authzDN
domain
peername
sasl_ssf
sockname
sockurl
ssf
tls_ssf
transport_ssf
See the related fields in slapd.access(5) for details. π
-uβ enable dry-run mode. Do not fetch any entries from the database. in this case, a fake entry with the DN given with the-boption is used, with no attributes. as a consequence, those rules that depend on the contents of the target object or any other database objects will not behave as with the real object. the DN given with the-boption is still used to select what rules apply; thus, it must be in the naming context of a configured database. See also-b. π (manifesting the real entry and getting a cardboard cutout instead)-U authcIDβ specify an ID to be mapped to a DN as by means ofauthz-regexporauthz-rewriterules (seeslapd.conf(5)for details); mutually exclusive with-D. pick a lane bestie, you can't do both π-vβ enable verbose mode. she will simply tell you everything π-X authzIDβ specify an authorization ID to be mapped to a DN as by means ofauthz-regexporauthz-rewriterules (seeslapd.conf(5)for details); mutually exclusive with-o authzDN=DN. again: one or the other, not both π
π EXAMPLES π
okay so here's the moment you've all been waiting for. this command:
/usr/bin/slapacl -f /etc/openldap/slapd.conf -v \
-U bjorn -b "o=University of Michigan,c=US" \
"o/read:University of Michigan"
tests whether the user bjorn can access the attribute o of the entry o=University of Michigan,c=US at read level. slay. that's the whole vibe check in one line πβ¨
π SEE ALSO π
ldap(3), slapd(8), slaptest(8), slapauth(8)
"OpenLDAP Administrator's Guide" (http://www.OpenLDAP.org/doc/admin/)
π ACKNOWLEDGEMENTS π
OpenLDAP Software is developed and maintained by The OpenLDAP Project <http://www.openldap.org/>. OpenLDAP Software is derived from the University of Michigan LDAP 3.3 Release. π«Ά giving credit where credit is due, always.
and that's the whole page bestie!! this was OpenLDAP 2.7.2, dated 2026/10/21, and no I will not stop talking about slapacl π
β she ate, she left no crumbs ππβ¨
π¦ where this page comes from
- arch rolling: openldap 2.7.2-2 Β· OLDAP-2.8
- Copyright 2004-2026 The OpenLDAP Foundation All Rights Reserved
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms