Code owners
Assign users and groups as approvers for specific file changes. Learn more.
ldap_NS.pl 94.49 KiB
#!/usr/bin/perl -T
#
use strict;
use warnings FATAL => 'all';
use diagnostics;
use Data::Dumper;
use Config::IniFiles;
use File::Basename;
use Net::LDAP;
use CGI;
use CGI::Ajax;
use CGI::Cookie;
use CGI::FormBuilder;
use CGI::Session::ID::md5;
use CGI::Session qw/-ip_match/;
use CGI::Untaint;
use HTML::Template;
use Crypt::CBC;
use Crypt::Blowfish;
use MIME::Base64;
use lib (
new Config::IniFiles(
-file => "/opt/etc/ini/global.ini"
)->val( 'APPLICATION', 'LIBRARY' )
);
use SNET::access;
use SNET::common;
use SNET::html;
use SNET::ActiveDirectory;
use SNET::LdapNS qw(:all);
use Net::LDAP::Constant qw(
LDAP_CONTROL_PASSWORDPOLICY
LDAP_PP_PASSWORD_EXPIRED
LDAP_PP_ACCOUNT_LOCKED
LDAP_PP_CHANGE_AFTER_RESET
);
use SNET::Magic::MagicHash;
my $ldap_snmc;
my $homepage='/cgi-bin/auth/ldap_NS.pl';
my $sessiondir='/var/tmp/www-data/ldapns';
my $templatedir='/opt/auth/cgi-bin/templates';
my ($cgi, $params, $error, $message, $sid, $session, $key);
my ($connected, $isAdmin, $userMustChange, $audit_user);
my $debug;
my $LOGIN;
my ($TAB_HOME, $INFO, $PASSWD, $EXPIRED);
my ($TAB_USERS, $USERINFOS, $DELUSER, $ADDUSER, $MODUSER, $RESET);
my ($TAB_GROUPS, $GROUPINFOS, $DELGROUP, $ADDGROUP, $MODGROUP);
my ($TAB_POLICY, $POLICYINFOS, $DELPOLICY, $ADDPOLICY, $MODPOLICY);
sub reconnect_ldap_snmc;
sub refresh_posixGroups;
sub refresh_userInfos;
sub reset_tab_actions;
sub display_passwd;
# used by check_remote_infos