|
@@ -0,0 +1,455 @@
|
|
|
+<?xml version="1.0" encoding="UTF-8"?>
|
|
|
+<!--
|
|
|
+ Licensed to the Apache Software Foundation (ASF) under one or more
|
|
|
+ contributor license agreements. See the NOTICE file distributed with
|
|
|
+ this work for additional information regarding copyright ownership.
|
|
|
+ The ASF licenses this file to You under the Apache License, Version 2.0
|
|
|
+ (the "License"); you may not use this file except in compliance with
|
|
|
+ the License. You may obtain a copy of the License at
|
|
|
+
|
|
|
+ http://www.apache.org/licenses/LICENSE-2.0
|
|
|
+
|
|
|
+ Unless required by applicable law or agreed to in writing, software
|
|
|
+ distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
+ See the License for the specific language governing permissions and
|
|
|
+ limitations under the License.
|
|
|
+-->
|
|
|
+
|
|
|
+<configuration supports_final="true">
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.port</name>
|
|
|
+ <value>5151</value>
|
|
|
+ <description>Port for unix authentication service, run within usersync</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.ssl</name>
|
|
|
+ <value>true</value>
|
|
|
+ <description>SSL enabled? (ranger admin -> usersync communication)</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.keystore.file</name>
|
|
|
+ <value>/etc/ranger/usersync/conf/unixauthservice.jks</value>
|
|
|
+ <description>Keystore file used for usersync</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.keystore.password</name>
|
|
|
+ <value>UnIx529p</value>
|
|
|
+ <property-type>PASSWORD</property-type>
|
|
|
+ <description>Keystore password</description>
|
|
|
+ <value-attributes>
|
|
|
+ <type>password</type>
|
|
|
+ </value-attributes>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.truststore.file</name>
|
|
|
+ <value>/etc/ranger/usersync/conf/mytruststore.jks</value>
|
|
|
+ <description>Truststore used for usersync, required if usersync -> ranger admin communication is SSL enabled</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.truststore.password</name>
|
|
|
+ <value>changeit</value>
|
|
|
+ <property-type>PASSWORD</property-type>
|
|
|
+ <description>Truststore password</description>
|
|
|
+ <value-attributes>
|
|
|
+ <type>password</type>
|
|
|
+ </value-attributes>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.passwordvalidator.path</name>
|
|
|
+ <value>./native/credValidator.uexe</value>
|
|
|
+ <description>Native program for password validation</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.enabled</name>
|
|
|
+ <display-name>Enable User Sync</display-name>
|
|
|
+ <value>true</value>
|
|
|
+ <description>Should users and groups be synchronized to Ranger Database? Required to setup Ranger policies</description>
|
|
|
+ <value-attributes>
|
|
|
+ <empty-value-valid>true</empty-value-valid>
|
|
|
+ <type>value-list</type>
|
|
|
+ <overridable>false</overridable>
|
|
|
+ <entries>
|
|
|
+ <entry>
|
|
|
+ <value>true</value>
|
|
|
+ <label>Yes</label>
|
|
|
+ </entry>
|
|
|
+ <entry>
|
|
|
+ <value>false</value>
|
|
|
+ <label>No</label>
|
|
|
+ </entry>
|
|
|
+ </entries>
|
|
|
+ <selection-cardinality>1</selection-cardinality>
|
|
|
+ </value-attributes>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.sink.impl.class</name>
|
|
|
+ <value>org.apache.ranger.unixusersync.process.PolicyMgrUserGroupBuilder</value>
|
|
|
+ <description>Class to be used as sink (to sync users into ranger admin)</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.policymanager.baseURL</name>
|
|
|
+ <value>{{ranger_external_url}}</value>
|
|
|
+ <description>URL to be used by clients to access ranger admin, use FQDN</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.policymanager.maxrecordsperapicall</name>
|
|
|
+ <value>1000</value>
|
|
|
+ <description>How many records to be returned per API call</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.policymanager.mockrun</name>
|
|
|
+ <value>false</value>
|
|
|
+ <description>Is user sync doing mock run?</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.unix.minUserId</name>
|
|
|
+ <display-name>Minimum User ID</display-name>
|
|
|
+ <value>500</value>
|
|
|
+ <description>Only sync users above this user id (applicable for UNIX)</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.unix.group.file</name>
|
|
|
+ <display-name>Group File</display-name>
|
|
|
+ <value>/etc/group</value>
|
|
|
+ <description>Location of the groups file on the linux server</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.unix.password.file</name>
|
|
|
+ <display-name>Password File</display-name>
|
|
|
+ <value>/etc/passwd</value>
|
|
|
+ <description>Location of the password file on the linux server</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.sleeptimeinmillisbetweensynccycle</name>
|
|
|
+ <value>60000</value>
|
|
|
+ <description>Sleeptime interval in milliseconds, if < 6000 then default to 1 min</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.source.impl.class</name>
|
|
|
+ <value>org.apache.ranger.unixusersync.process.UnixUserGroupBuilder</value>
|
|
|
+ <display-name>Sync Source</display-name>
|
|
|
+ <description>For Ldap: org.apache.ranger.ldapusersync.process.LdapUserGroupBuilder, For Unix: org.apache.ranger.unixusersync.process.UnixUserGroupBuilder, org.apache.ranger.unixusersync.process.FileSourceUserGroupBuilder</description>
|
|
|
+ <value-attributes>
|
|
|
+ <type>value-list</type>
|
|
|
+ <empty-value-valid>true</empty-value-valid>
|
|
|
+ <overridable>false</overridable>
|
|
|
+ <entries>
|
|
|
+ <entry>
|
|
|
+ <value>org.apache.ranger.unixusersync.process.UnixUserGroupBuilder</value>
|
|
|
+ <label>UNIX</label>
|
|
|
+ </entry>
|
|
|
+ <entry>
|
|
|
+ <value>org.apache.ranger.unixusersync.process.FileSourceUserGroupBuilder</value>
|
|
|
+ <label>FILE</label>
|
|
|
+ </entry>
|
|
|
+ <entry>
|
|
|
+ <value>org.apache.ranger.ldapusersync.process.LdapUserGroupBuilder</value>
|
|
|
+ <label>LDAP/AD</label>
|
|
|
+ </entry>
|
|
|
+ </entries>
|
|
|
+ <selection-cardinality>1</selection-cardinality>
|
|
|
+ </value-attributes>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.filesource.file</name>
|
|
|
+ <display-name>File Name</display-name>
|
|
|
+ <value>/tmp/usergroup.txt</value>
|
|
|
+ <description>Path to the file with the users and groups information. Example: /tmp/usergroup.json or /tmp/usergroup.csv or /tmp/usergroup.txt</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.filesource.text.delimiter</name>
|
|
|
+ <display-name>Delimiter</display-name>
|
|
|
+ <value>,</value>
|
|
|
+ <description>Delimiter used in file, if File based user sync is used</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.ldap.url</name>
|
|
|
+ <display-name>LDAP/AD URL</display-name>
|
|
|
+ <value></value>
|
|
|
+ <description>LDAP server URL. Example: value = ldap://localhost:389 or ldaps//localhost:636</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.ldap.binddn</name>
|
|
|
+ <display-name>Bind User</display-name>
|
|
|
+ <value></value>
|
|
|
+ <description>Full distinguished name (DN), including common name (CN), of an LDAP user account that has privileges to search for users. This user is used for searching the users. This could be read-only LDAP user. Example: cn=admin,dc=example,dc=com</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.ldap.ldapbindpassword</name>
|
|
|
+ <display-name>Bind User Password</display-name>
|
|
|
+ <value></value>
|
|
|
+ <property-type>PASSWORD</property-type>
|
|
|
+ <description>Password for the LDAP bind user used for searching users.</description>
|
|
|
+ <value-attributes>
|
|
|
+ <type>password</type>
|
|
|
+ </value-attributes>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.ldap.bindalias</name>
|
|
|
+ <value>testldapalias</value>
|
|
|
+ <description>Set as ranger.usersync.ldap.bindalias (string as is)</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.ldap.bindkeystore</name>
|
|
|
+ <value></value>
|
|
|
+ <description>Set same value as ranger.usersync.keystore.file property i.e default value /etc/ranger/usersync/conf/ugsync.jceks</description>
|
|
|
+ <value-attributes>
|
|
|
+ <empty-value-valid>true</empty-value-valid>
|
|
|
+ </value-attributes>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.ldap.searchBase</name>
|
|
|
+ <value>dc=hadoop,dc=apache,dc=org</value>
|
|
|
+ <description>"# search base for users and groups
|
|
|
+# sample value would be dc=hadoop,dc=apache,dc=org"</description>
|
|
|
+ <value-attributes>
|
|
|
+ <empty-value-valid>true</empty-value-valid>
|
|
|
+ </value-attributes>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.ldap.user.searchbase</name>
|
|
|
+ <display-name>User Search Base</display-name>
|
|
|
+ <value></value>
|
|
|
+ <description>"# search base for users
|
|
|
+# sample value would be ou=users,dc=hadoop,dc=apache,dc=org
|
|
|
+# overrides value specified in ranger.usersync.ldap.searchBase"</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.ldap.user.searchscope</name>
|
|
|
+ <display-name>User Search Scope</display-name>
|
|
|
+ <value>sub</value>
|
|
|
+ <description>"# search scope for the users, only base, one and sub are supported values
|
|
|
+# please customize the value to suit your deployment
|
|
|
+# default value: sub"</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.ldap.user.objectclass</name>
|
|
|
+ <display-name>User Object Class</display-name>
|
|
|
+ <value>person</value>
|
|
|
+ <description>LDAP User Object Class. Example: person or user</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.ldap.user.searchfilter</name>
|
|
|
+ <display-name>User Search Filter</display-name>
|
|
|
+ <value></value>
|
|
|
+ <description>"optional additional filter constraining the users selected for syncing
|
|
|
+# a sample value would be (dept=eng)
|
|
|
+# please customize the value to suit your deployment
|
|
|
+# default value is empty"</description>
|
|
|
+ <value-attributes>
|
|
|
+ <empty-value-valid>true</empty-value-valid>
|
|
|
+ </value-attributes>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.ldap.user.nameattribute</name>
|
|
|
+ <display-name>Username Attribute</display-name>
|
|
|
+ <value></value>
|
|
|
+ <description>LDAP user name attribute. Example: sAMAccountName in AD, uid or cn in OpenLDAP</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.ldap.referral</name>
|
|
|
+ <value>ignore</value>
|
|
|
+ <description>Set to follow if multiple LDAP servers are configured to return continuation references for results. Set to ignore (default) if no referrals should be followed</description>
|
|
|
+ <value-attributes>
|
|
|
+ <empty-value-valid>true</empty-value-valid>
|
|
|
+ </value-attributes>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.ldap.user.groupnameattribute</name>
|
|
|
+ <display-name>User Group Name Attribute</display-name>
|
|
|
+ <value>memberof, ismemberof</value>
|
|
|
+ <description>LDAP user group name attribute. Generally it is the same as username attribute. Example: sAMAccountName in AD, uid or cn in OpenLDAP</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.ldap.username.caseconversion</name>
|
|
|
+ <value>none</value>
|
|
|
+ <description>User name case conversion</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.ldap.groupname.caseconversion</name>
|
|
|
+ <value>none</value>
|
|
|
+ <description>Group name case conversion</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.logdir</name>
|
|
|
+ <value>{{usersync_log_dir}}</value>
|
|
|
+ <description>User sync log directory</description>
|
|
|
+ <value-attributes>
|
|
|
+ <visible>false</visible>
|
|
|
+ <overridable>false</overridable>
|
|
|
+ </value-attributes>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.group.searchenabled</name>
|
|
|
+ <display-name>Enable Group Sync</display-name>
|
|
|
+ <value>false</value>
|
|
|
+ <description>"# do we want to do ldapsearch to find groups instead of relying on user entry attributes
|
|
|
+# valid values: true, false
|
|
|
+# any value other than true would be treated as false
|
|
|
+# default value: false"</description>
|
|
|
+ <value-attributes>
|
|
|
+ <empty-value-valid>true</empty-value-valid>
|
|
|
+ <type>value-list</type>
|
|
|
+ <overridable>false</overridable>
|
|
|
+ <entries>
|
|
|
+ <entry>
|
|
|
+ <value>true</value>
|
|
|
+ <label>Yes</label>
|
|
|
+ </entry>
|
|
|
+ <entry>
|
|
|
+ <value>false</value>
|
|
|
+ <label>No</label>
|
|
|
+ </entry>
|
|
|
+ </entries>
|
|
|
+ <selection-cardinality>1</selection-cardinality>
|
|
|
+ </value-attributes>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.group.usermapsyncenabled</name>
|
|
|
+ <value>true</value>
|
|
|
+ <display-name>Group User Map Sync</display-name>
|
|
|
+ <description>Sync specific groups for users?</description>
|
|
|
+ <value-attributes>
|
|
|
+ <empty-value-valid>true</empty-value-valid>
|
|
|
+ <type>value-list</type>
|
|
|
+ <overridable>false</overridable>
|
|
|
+ <entries>
|
|
|
+ <entry>
|
|
|
+ <value>true</value>
|
|
|
+ <label>Yes</label>
|
|
|
+ </entry>
|
|
|
+ <entry>
|
|
|
+ <value>false</value>
|
|
|
+ <label>No</label>
|
|
|
+ </entry>
|
|
|
+ </entries>
|
|
|
+ <selection-cardinality>1</selection-cardinality>
|
|
|
+ </value-attributes>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.group.searchbase</name>
|
|
|
+ <display-name>Group Search Base</display-name>
|
|
|
+ <value></value>
|
|
|
+ <description>"# search base for groups
|
|
|
+# sample value would be ou=groups,dc=hadoop,dc=apache,dc=org
|
|
|
+# overrides value specified in ranger.usersync.ldap.searchBase, ranger.usersync.ldap.user.searchbase
|
|
|
+# if a value is not specified, takes the value of ranger.usersync.ldap.searchBase
|
|
|
+# if ranger.usersync.ldap.searchBase is also not specified, takes the value of ranger.usersync.ldap.user.searchbase"</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.group.searchscope</name>
|
|
|
+ <value></value>
|
|
|
+ <description>"# search scope for the groups, only base, one and sub are supported values
|
|
|
+# please customize the value to suit your deployment
|
|
|
+# default value: sub"</description>
|
|
|
+ <value-attributes>
|
|
|
+ <empty-value-valid>true</empty-value-valid>
|
|
|
+ </value-attributes>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.group.objectclass</name>
|
|
|
+ <display-name>Group Object Class</display-name>
|
|
|
+ <value></value>
|
|
|
+ <description>LDAP Group object class. Example: group</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.group.searchfilter</name>
|
|
|
+ <value></value>
|
|
|
+ <display-name>Group Search Filter</display-name>
|
|
|
+ <description>"# optional additional filter constraining the groups selected for syncing
|
|
|
+# a sample value would be (dept=eng)
|
|
|
+# please customize the value to suit your deployment
|
|
|
+# default value is empty"</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.group.nameattribute</name>
|
|
|
+ <display-name>Group Name Attribute</display-name>
|
|
|
+ <value></value>
|
|
|
+ <description>LDAP group name attribute. Example: cn</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.group.memberattributename</name>
|
|
|
+ <display-name>Group Member Attribute</display-name>
|
|
|
+ <value></value>
|
|
|
+ <description>LDAP group member attribute name. Example: member</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.pagedresultsenabled</name>
|
|
|
+ <value>true</value>
|
|
|
+ <description>Results can be paged?</description>
|
|
|
+ <value-attributes>
|
|
|
+ <empty-value-valid>true</empty-value-valid>
|
|
|
+ <type>value-list</type>
|
|
|
+ <overridable>false</overridable>
|
|
|
+ <entries>
|
|
|
+ <entry>
|
|
|
+ <value>true</value>
|
|
|
+ <label>Yes</label>
|
|
|
+ </entry>
|
|
|
+ <entry>
|
|
|
+ <value>false</value>
|
|
|
+ <label>No</label>
|
|
|
+ </entry>
|
|
|
+ </entries>
|
|
|
+ <selection-cardinality>1</selection-cardinality>
|
|
|
+ </value-attributes>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.pagedresultssize</name>
|
|
|
+ <value>500</value>
|
|
|
+ <description>Page size</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+ <property>
|
|
|
+ <name>ranger.usersync.credstore.filename</name>
|
|
|
+ <value>/etc/ranger/usersync/conf/ugsync.jceks</value>
|
|
|
+ <description>Credential store file name for user sync, specify full path</description>
|
|
|
+ </property>
|
|
|
+
|
|
|
+</configuration>
|