NetWorker supports Microsoft Active Directory (AD) or Linux Lightweight Directory Protocol (LDAP). Both solutions use the LDAP protocol to communicate with the external authentication service. This article explains how to use the NetWorker authc_config script templates to add external authority to NetWorker. This article does not provide instructions for configuring Secure LDAP (LDAPS). Instructions for configuring LDAPS can be found in: NetWorker: How To configure LDAPS Authentication
This article can be broken down into the following sections. Carefully review each section before proceeding:
Prerequisites:
Configuring the External Authority Resource:
Determine which host is the NetWorker Authentication server. This can be validated in the NetWorker Management Console (NMC) server's gstd.conf file:
The NetWorker authentication server includes authc_config script templates in the following location:
authc_config -u administrator -p <password> -e add-config \ -D "config-tenant-id=<tenant_id>" \ -D "config-active-directory=y" \ -D "config-name=<authority_name>" \ -D "config-domain=<domain_name>" \ -D "config-server-address=<protocol>://<hostname_or_ip_address>:<port>/<base_dn>" \ -D "config-user-dn=<user_dn>" \ -D "config-user-dn-password=<user_password>" \ -D "config-user-search-path=<user_search_path>" \ -D "config-user-id-attr=sAMAccountName" \ -D "config-user-object-class=<user_object_class>" \ -D "config-group-search-path=<group_search_path>" \ -D "config-group-name-attr=cn" \ -D "config-group-object-class=group" \ -D "config-group-member-attr=member" \ -D "config-user-search-filter=" \ -D "config-group-search-filter=" \ -D "config-search-subtree=n" \ -D "config-user-group-attr=memberOf" \ -D "config-object-class=objectClass"
The following table details the parameters defined in the configuration file.
config-tenant-id | Tenants can be used in environments where more than one authentication method may be used or when multiple authorities must be configured. Creating a tenant is optional. You can use the default tenant, config-tenant-id=1.
|
config-active-directory | If you are using a Microsoft Active Directory (AD) server: y. This is the default setting in the authc-create-ad-config.x.template. If you are using an LDAP server (e.g: OpenLDAP): n. This is the default setting in the authc-create-ldap-config.x.template. |
config-name | This name is only an identifier for the authentication configuration being added to NetWorker. |
config-domain | This is the domain name that is used for logging into NetWorker, for example: networker.lan. This field should match the Domain Component (DC) values of the domain. |
config-server-address | <protocol>://<hostname_or_ip_address>:<port>/<base_dn> Protocol:
Hostname/IP address:
|
config-user-dn | Specify the full Distinguished Name |
config-user-dn-password | Specify the password for the account specified in the config-user-dn. |
config-user-search-path | This field can be left blank in which case authc can query the full domain. Permissions must be granted for NMC/ NetWorker server access before these users/groups can log in the NMC and manage the NetWorker server. If a Base DN was specified in the config-server-address, specify the relative path (excluding the Base DN) to the domain. |
config-user-id-attr | The user ID that is associated with the user object in the LDAP or AD hierarchy.
|
config-user-object-class | The object class that identifies the users in the LDAP or AD hierarchy. For example, inetOrgPerson (LDAP) or user (AD) |
config-group-search-path | Like config-user-search-path this field can be left blank in which case authc is capable of querying the full domain. If a Base DN was specified in the config-server-address, specify the relative path (excluding the Base DN) to the domain. |
config-group-name-attr | The attribute that identifies the group name. For example, cn |
config-group-object-class | The object class that identifies groups in the LDAP or AD hierarchy.
|
config-group-member-attr | The group membership of the user within a group
|
config-user-search-filter | (Optional.) The filter that the NetWorker Authentication Service can use to perform user searches in the LDAP or AD hierarchy. RFC 2254 |
config-group-search-filter | (Optional.) The filter that the NetWorker Authentication Service can use to perform group searches in the LDAP or AD hierarchy. RFC 2254 |
config-search-subtree | (Optional.) A yes or no value that specifies if the external authority should perform subtree searches. Default value: no |
config-user-group-attr | (Optional.) This option supports configurations that identify the group membership for a user within the properties of the user object. For example, for AD, specify the attribute memberOf. |
config-object-class | (Optional.) The object class of the external authentication authority. RFC 4512 |
authc_config -u administrator -p 'NetWorker_Administrator_Password' -e add-config \ -D "config-tenant-id=1" \ -D "config-active-directory=y" \ -D "config-name=ad" \ -D "config-domain=networker.lan" \ -D "config-server-address=ldap://dc.networker.lan:389/DC=networker,DC=lan" \ -D "config-user-dn=CN=Administrator,CN=Users,DC=networker,DC=lan" \ -D "config-user-dn-password=XXXXXXXX" \ -D "config-user-search-path=" \ -D "config-user-id-attr=sAMAccountName" \ -D "config-user-object-class=user" \ -D "config-group-search-path=" \ -D "config-group-name-attr=cn" \ -D "config-group-object-class=group" \ -D "config-group-member-attr=member" \ -D "config-user-search-filter=" \ -D "config-group-search-filter=" \ -D "config-search-subtree=y" \ -D "config-user-group-attr=memberOf" \ -D "config-object-class=objectClass"
[root@nsr ~]# /opt/nsr/authc-server/scripts/authc-create-ad-config.sh Configuration ad is created successfully.
authc_mgmt -u administrator -p 'NetWorker_Administrator_Password' -e query-ldap-groups-for-user -D query-tenant=Tenant_Name -D query-domain=Domain_Name -D user-name=AD/LDAP_Username
[root@nsr ~]# authc_mgmt -u Administrator -p '!Password1' -e query-ldap-groups-for-user -D query-tenant=default -D query-domain=networker.lan -D user-name=bkupadmin The query returns 1 records. Group Name Full Dn Name NetWorker_Admins CN=NetWorker_Admins,OU=DELL,dc=networker,dc=lan
nsraddadmin -e "USER/GROUP_DN"
[root@nsr ~]# nsraddadmin -e "CN=NetWorker_Admins,OU=DELL,dc=networker,dc=lan" 134749:nsraddadmin: 'CN=NetWorker_Admins,OU=DELL,dc=networker,dc=lan' added to the 'external roles' list of 'Security Administrators' user group. 134749:nsraddadmin: 'CN=NetWorker_Admins,OU=DELL,dc=networker,dc=lan' added to the 'external roles' list of 'Application Administrators' user group.
authc_config -u Administrator -p 'NetWorker_Administrator_Password' -e add-permission -D permission-name=FULL_CONTROL -D permission-group-dn="AD/LDAP_group_dn"
[root@nsr ~]# authc_config -u Administrator -p '!Password1' -e add-permission -D permission-name=FULL_CONTROL -D permission-group-dn="CN=NetWorker_Admins,OU=DELL,dc=networker,dc=lan" Permission FULL_CONTROL is created successfully. nve:~ # authc_config -u Administrator -p '!Password1' -e find-all-permissions The query returns 2 records. Permission Id Permission Name Group DN Pattern Group DN 1 FULL_CONTROL ^cn=Administrators,cn=Groups.*$ 2 FULL_CONTROL CN=NetWorker_Admins,OU=DELL,dc=networ...