#!/usr/bin/perl # Show the details of one access control rule require './ldap-server-lib.pl'; &local_ldap_server() == 1 || &error($text{'slapd_elocal'}); $access{'acl'} || &error($text{'acl_ecannot'}); &ReadParse(); # Get ACLs if (&get_config_type() == 1) { $conf = &get_config(); @access = &find("access", $conf); $hasorder = 0; } else { $defdb = &get_default_db(); $conf = &get_ldif_config(); @access = &find_ldif("olcAccess", $conf, $defdb); $hasorder = 1; } # Page header if ($in{'new'}) { &ui_print_header(undef, $text{'eacl_title1'}, "", "eacl"); $p = { 'what' => '*', 'by' => [ ] }; } else { &ui_print_header(undef, $text{'eacl_title2'}, "", "eacl"); $acl = $access[$in{'idx'}]; $p = &parse_ldap_access($acl); } # Form header print &ui_form_start("acl_save.cgi", "post"); print &ui_hidden("new", $in{'new'}); print &ui_hidden("idx", $in{'idx'}); print &ui_table_start($text{'eacl_header'}, undef, 2); # Rule ordering if ($hasorder && !$in{'new'}) { print &ui_table_row($text{'eacl_order'}, $p->{'order'} eq '' ? $text{'eacl_noorder'} : $p->{'order'}); } # Granting to what object $what = $p->{'what'} eq '*' || $p->{'what'} eq '' ? 1 : 0; if ($p->{'what'} =~ /^dn(\.([^=]+))?="(.*)"$/i || $p->{'what'} =~ /^dn(\.([^=]+))?=(.*)$/i) { $dn = $3; $style = $2; if ($dn eq "") { $what = 2; } } print &ui_table_row($text{'eacl_what'}, &ui_radio_table("what", $what, [ [ 1, $text{'eacl_what1'} ], [ 2, $text{'eacl_what2'} ], [ 0, $text{'eacl_what0'}, &ui_textbox("what_dn", $dn, 30)." ". $text{'eacl_mtype'}." ". &ui_select("what_style", $style, [ [ '', $text{'default'} ], map { [ $_, $text{'eacl_'.$_} ] } @acl_dn_styles ]) ] ])."\n". &ui_checkbox("filter_on", 1, $text{'eacl_filter'}, $p->{'filter'})." ". &ui_textbox("filter", $p->{'filter'}, 40)."<br>\n". &ui_checkbox("attrs_on", 1, $text{'eacl_attrs'}, $p->{'attrs'})." ". &ui_textbox("attrs", $p->{'attrs'}, 40) ); # Access rights table @tds = ( "width=40% nowrap", "width=30%", "width=30%" ); $wtable = &ui_columns_start([ $text{'eacl_who'}, $text{'eacl_access'}, $text{'eacl_control'} ], 100, 0, \@tds); $i = 0; foreach $b (@{$p->{'by'}}, { }, { }, { }) { $kwho = $b->{'who'} eq 'self' || $b->{'who'} eq 'users' || $b->{'who'} eq 'anonymous' || $b->{'who'} eq '*' || $b->{'who'} eq ''; $kacc = !$b->{'access'} ? 'read' : &indexof($b->{'access'}, @acl_access_levels) >= 0 ? $b->{'access'} : undef; $wtable .= &ui_columns_row([ # Who are we granting? &ui_select("wmode_$i", $kwho ? $b->{'who'} : 'other', [ [ '', " " ], [ '*', $text{'eacl_every'} ], [ 'self', $text{'eacl_self'} ], [ 'users', $text{'eacl_users'} ], [ 'anonymous', $text{'eacl_anonymous'} ], [ 'other', $text{'eacl_other'} ] ], 1, 0, 0, 0, "style='width:45%' onChange='form.who_$i.disabled = (form.wmode_$i.value != \"other\")'"). &ui_textbox("who_$i", $kwho ? "" : $b->{'who'}, 50, $kwho, undef, "style='width:45%'"), # What access level? Show textbox if complex $kacc ? &ui_select("access_$i", $kacc, [ map { [ $_, $text{'access_l'.$_} ] } @acl_access_levels ], 1, 0, 0, 0, "style='width:90%'") : &ui_textbox("access_$i", $b->{'access'}, 20, 0, undef, "style='width:90%'"), # Additional attrs &ui_textbox("control_$i", join(" ", @{$b->{'control'}}), 30, 0, undef, "style='width:90%'"), ], \@tds); $i++; } $wtable .= &ui_columns_end(); print &ui_table_row(undef, $wtable, 2); # Form and page end print &ui_table_end(); if ($in{'new'}) { print &ui_form_end([ [ undef, $text{'create'} ] ]); } else { print &ui_form_end([ [ undef, $text{'save'} ], [ 'delete', $text{'delete'} ] ]); } &ui_print_footer("edit_acl.cgi", $text{'acl_return'});
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
help | Folder | 0755 |
|
|
images | Folder | 0755 |
|
|
lang | Folder | 0755 |
|
|
CHANGELOG | File | 849 B | 0644 |
|
acl_form.cgi | File | 3.76 KB | 0755 |
|
acl_save.cgi | File | 2.9 KB | 0755 |
|
acl_security.pl | File | 558 B | 0755 |
|
add.cgi | File | 1.24 KB | 0755 |
|
add_browser.cgi | File | 1.01 KB | 0755 |
|
add_form.cgi | File | 1.98 KB | 0755 |
|
apply.cgi | File | 256 B | 0755 |
|
backup_config.pl | File | 787 B | 0755 |
|
bootup.cgi | File | 640 B | 0755 |
|
cgi_args.pl | File | 349 B | 0755 |
|
config | File | 116 B | 0644 |
|
config-ALL-linux | File | 230 B | 0644 |
|
config-AlmaLinux-7.0-ALL | File | 255 B | 0644 |
|
config-Amazon-Linux-2-ALL | File | 255 B | 0644 |
|
config-CentOS-Linux-7.0-ALL | File | 255 B | 0644 |
|
config-CentOS-Stream-Linux-8.0-ALL | File | 255 B | 0644 |
|
config-CloudLinux-8.0-ALL | File | 255 B | 0644 |
|
config-Oracle-Linux-8.0-ALL | File | 255 B | 0644 |
|
config-Redhat-Enterprise-Linux-6.0-6.9 | File | 261 B | 0644 |
|
config-Redhat-Enterprise-Linux-7.0-ALL | File | 255 B | 0644 |
|
config-Rocky-Linux-7.0-ALL | File | 255 B | 0644 |
|
config-Scientific-Linux-6.0-6.9 | File | 258 B | 0644 |
|
config-Scientific-Linux-7.0-ALL | File | 255 B | 0644 |
|
config-Ubuntu-Linux-8.10-ALL | File | 235 B | 0644 |
|
config-debian-linux-6.0-ALL | File | 231 B | 0644 |
|
config-debian-linux-ALL-5.9 | File | 234 B | 0644 |
|
config-freebsd | File | 289 B | 0644 |
|
config-freebsd-8-ALL | File | 318 B | 0644 |
|
config-mandrake-linux | File | 250 B | 0644 |
|
config-openSUSE-Linux-15.0-ALL | File | 247 B | 0644 |
|
config-pardus-linux | File | 170 B | 0644 |
|
config-redhat-linux | File | 261 B | 0644 |
|
config-redhat-linux-24.0-ALL | File | 280 B | 0644 |
|
config-solaris | File | 214 B | 0644 |
|
config-suse-linux | File | 253 B | 0644 |
|
config-syno-linux | File | 230 B | 0644 |
|
config-turbo-linux | File | 250 B | 0644 |
|
config.info | File | 989 B | 0644 |
|
config.info.ca | File | 1.09 KB | 0644 |
|
config.info.de | File | 1.14 KB | 0644 |
|
config.info.fr | File | 0 B | 0644 |
|
config.info.nl | File | 1.02 KB | 0644 |
|
config.info.no | File | 1.03 KB | 0644 |
|
config.info.pt_BR | File | 1.08 KB | 0644 |
|
create.cgi | File | 2.68 KB | 0755 |
|
defaultacl | File | 65 B | 0644 |
|
delete_acls.cgi | File | 964 B | 0755 |
|
delete_browser.cgi | File | 1.01 KB | 0755 |
|
down_acl.cgi | File | 1.26 KB | 0755 |
|
down_schema.cgi | File | 649 B | 0755 |
|
edit_acl.cgi | File | 1.75 KB | 0755 |
|
edit_browser.cgi | File | 7.61 KB | 0755 |
|
edit_create.cgi | File | 1.05 KB | 0755 |
|
edit_ldif.cgi | File | 3.25 KB | 0755 |
|
edit_schema.cgi | File | 2.13 KB | 0755 |
|
edit_sfile.cgi | File | 932 B | 0755 |
|
edit_slapd.cgi | File | 3.77 KB | 0755 |
|
gencert.cgi | File | 1.23 KB | 0755 |
|
gencert_form.cgi | File | 1.25 KB | 0755 |
|
gencert_ldif.cgi | File | 1.24 KB | 0755 |
|
index.cgi | File | 3.51 KB | 0755 |
|
install_check.pl | File | 469 B | 0755 |
|
ldap-server-lib.pl | File | 24.04 KB | 0755 |
|
log_parser.pl | File | 1.71 KB | 0755 |
|
module.info | File | 160 B | 0644 |
|
module.info.af | File | 0 B | 0644 |
|
module.info.af.auto | File | 119 B | 0644 |
|
module.info.ar | File | 0 B | 0644 |
|
module.info.ar.auto | File | 158 B | 0644 |
|
module.info.be | File | 0 B | 0644 |
|
module.info.be.auto | File | 165 B | 0644 |
|
module.info.bg | File | 0 B | 0644 |
|
module.info.bg.auto | File | 173 B | 0644 |
|
module.info.ca | File | 105 B | 0644 |
|
module.info.ca.auto | File | 25 B | 0644 |
|
module.info.cs | File | 0 B | 0644 |
|
module.info.cs.auto | File | 108 B | 0644 |
|
module.info.da | File | 0 B | 0644 |
|
module.info.da.auto | File | 113 B | 0644 |
|
module.info.de | File | 95 B | 0644 |
|
module.info.de.auto | File | 23 B | 0644 |
|
module.info.el | File | 0 B | 0644 |
|
module.info.el.auto | File | 191 B | 0644 |
|
module.info.es | File | 0 B | 0644 |
|
module.info.es.auto | File | 126 B | 0644 |
|
module.info.eu | File | 0 B | 0644 |
|
module.info.eu.auto | File | 125 B | 0644 |
|
module.info.fa | File | 0 B | 0644 |
|
module.info.fa.auto | File | 152 B | 0644 |
|
module.info.fi | File | 0 B | 0644 |
|
module.info.fi.auto | File | 126 B | 0644 |
|
module.info.fr | File | 0 B | 0644 |
|
module.info.fr.auto | File | 123 B | 0644 |
|
module.info.he | File | 0 B | 0644 |
|
module.info.he.auto | File | 144 B | 0644 |
|
module.info.hr | File | 0 B | 0644 |
|
module.info.hr.auto | File | 138 B | 0644 |
|
module.info.hu | File | 0 B | 0644 |
|
module.info.hu.auto | File | 129 B | 0644 |
|
module.info.it | File | 0 B | 0644 |
|
module.info.it.auto | File | 114 B | 0644 |
|
module.info.ja | File | 0 B | 0644 |
|
module.info.ja.auto | File | 146 B | 0644 |
|
module.info.ko | File | 0 B | 0644 |
|
module.info.ko.auto | File | 114 B | 0644 |
|
module.info.lt | File | 0 B | 0644 |
|
module.info.lt.auto | File | 128 B | 0644 |
|
module.info.lv | File | 0 B | 0644 |
|
module.info.lv.auto | File | 116 B | 0644 |
|
module.info.ms | File | 96 B | 0644 |
|
module.info.ms.auto | File | 24 B | 0644 |
|
module.info.mt | File | 0 B | 0644 |
|
module.info.mt.auto | File | 121 B | 0644 |
|
module.info.nl | File | 20 B | 0644 |
|
module.info.nl.auto | File | 88 B | 0644 |
|
module.info.no | File | 20 B | 0644 |
|
module.info.no.auto | File | 90 B | 0644 |
|
module.info.pl | File | 0 B | 0644 |
|
module.info.pl.auto | File | 116 B | 0644 |
|
module.info.pt | File | 0 B | 0644 |
|
module.info.pt.auto | File | 121 B | 0644 |
|
module.info.pt_BR | File | 25 B | 0644 |
|
module.info.pt_BR.auto | File | 105 B | 0644 |
|
module.info.ro | File | 0 B | 0644 |
|
module.info.ro.auto | File | 127 B | 0644 |
|
module.info.ru | File | 26 B | 0644 |
|
module.info.ru.auto | File | 142 B | 0644 |
|
module.info.sk | File | 0 B | 0644 |
|
module.info.sk.auto | File | 111 B | 0644 |
|
module.info.sl | File | 0 B | 0644 |
|
module.info.sl.auto | File | 128 B | 0644 |
|
module.info.sv | File | 0 B | 0644 |
|
module.info.sv.auto | File | 105 B | 0644 |
|
module.info.th | File | 0 B | 0644 |
|
module.info.th.auto | File | 228 B | 0644 |
|
module.info.tr | File | 0 B | 0644 |
|
module.info.tr.auto | File | 118 B | 0644 |
|
module.info.uk | File | 0 B | 0644 |
|
module.info.uk.auto | File | 169 B | 0644 |
|
module.info.ur | File | 0 B | 0644 |
|
module.info.ur.auto | File | 171 B | 0644 |
|
module.info.vi | File | 0 B | 0644 |
|
module.info.vi.auto | File | 156 B | 0644 |
|
module.info.zh | File | 0 B | 0644 |
|
module.info.zh.auto | File | 110 B | 0644 |
|
module.info.zh_TW | File | 0 B | 0644 |
|
module.info.zh_TW.auto | File | 119 B | 0644 |
|
perms.cgi | File | 432 B | 0755 |
|
prefs.info | File | 33 B | 0644 |
|
rename_browser.cgi | File | 1.04 KB | 0755 |
|
save_browser.cgi | File | 1.04 KB | 0755 |
|
save_ldif.cgi | File | 2.43 KB | 0755 |
|
save_schema.cgi | File | 727 B | 0755 |
|
save_sfile.cgi | File | 607 B | 0755 |
|
save_slapd.cgi | File | 2.78 KB | 0755 |
|
sdelete_browser.cgi | File | 936 B | 0755 |
|
start.cgi | File | 251 B | 0755 |
|
stop.cgi | File | 246 B | 0755 |
|
up_acl.cgi | File | 1.26 KB | 0755 |
|
up_schema.cgi | File | 649 B | 0755 |
|
view_sfile.cgi | File | 374 B | 0755 |
|