This is an automated email from the ASF dual-hosted git repository.
madhan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ranger.git
The following commit(s) were added to refs/heads/master by this push:
new fa6199227 RANGER-4154: updated usersync to populate firstName for users
fa6199227 is described below
commit fa61992272007b246099b9cb47ec5e477062233e
Author: Madhan Neethiraj <[email protected]>
AuthorDate: Fri Mar 24 02:40:07 2023 -0700
RANGER-4154: updated usersync to populate firstName for users
(cherry picked from commit 8e2d48f3ddcf32596bb55e811e238ce4e795cb6c)
---
.../main/java/org/apache/ranger/biz/XUserMgr.java | 26 ++++++++++------------
tagsync/pom.xml | 20 +++++++++++++++++
.../apache/ranger/ugsyncutil/model/XUserInfo.java | 7 +++++-
ugsync/pom.xml | 20 +++++++++++++++++
.../process/PolicyMgrUserGroupBuilder.java | 1 +
5 files changed, 59 insertions(+), 15 deletions(-)
diff --git a/security-admin/src/main/java/org/apache/ranger/biz/XUserMgr.java
b/security-admin/src/main/java/org/apache/ranger/biz/XUserMgr.java
index b3aca3164..455ae0bc4 100755
--- a/security-admin/src/main/java/org/apache/ranger/biz/XUserMgr.java
+++ b/security-admin/src/main/java/org/apache/ranger/biz/XUserMgr.java
@@ -2615,37 +2615,35 @@ public class XUserMgr extends XUserMgrBase {
int ret = 0;
for (VXUser vXUser : users.getList()) {
- if (vXUser == null || vXUser.getName() == null
- ||
"null".equalsIgnoreCase(vXUser.getName())
- || vXUser.getName().trim().isEmpty()) {
- logger.warn("Ignoring invalid username " +
vXUser==null? null : vXUser.getName());
+ final String userName = vXUser == null ? null :
vXUser.getName();
+ final String firstName = vXUser == null ? null :
vXUser.getFirstName();
+
+ if (userName == null ||
"null".equalsIgnoreCase(userName) || userName.trim().isEmpty()) {
+ logger.warn("Ignoring user {}: invalid
username", userName);
continue;
}
- String firstName = vXUser.getFirstName();
- if (firstName == null ||
"null".equalsIgnoreCase(firstName)
- || firstName.trim().isEmpty()) {
- logger.warn("Ignoring invalid first name " +
vXUser == null ? null : vXUser.getFirstName());
+ if (firstName == null ||
"null".equalsIgnoreCase(firstName) || firstName.trim().isEmpty()) {
+ logger.warn("Ignoring user {}: invalid
firstName {}", userName, firstName);
continue;
}
- checkAccess(vXUser.getName());
+ checkAccess(userName);
TransactionTemplate txTemplate = new
TransactionTemplate(txManager);
txTemplate.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);
try {
txTemplate.execute(new
TransactionCallback<Object>() {
@Override
public Object
doInTransaction(TransactionStatus status) {
- String username =
vXUser.getName();
- VXPortalUser vXPortalUser =
userMgr.getUserProfileByLoginId(username);
+ VXPortalUser vXPortalUser =
userMgr.getUserProfileByLoginId(userName);
if (vXPortalUser == null) {
if
(logger.isDebugEnabled()) {
-
logger.debug("create user " + username);
+
logger.debug("create user " + userName);
}
- createXUser(vXUser,
username);
+ createXUser(vXUser,
userName);
} else {
if
(logger.isDebugEnabled()) {
-
logger.debug("Update user " + username);
+
logger.debug("Update user " + userName);
}
updateXUser(vXUser,
vXPortalUser);
}
diff --git a/tagsync/pom.xml b/tagsync/pom.xml
index 42498ae6b..1005a6d1c 100644
--- a/tagsync/pom.xml
+++ b/tagsync/pom.xml
@@ -95,6 +95,26 @@
<artifactId>commons-text</artifactId>
<version>${commons.text.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>log4j-over-slf4j</artifactId>
+ <version>${slf4j.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.logging.log4j</groupId>
+ <artifactId>log4j-api</artifactId>
+ <version>${log4j2.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.logging.log4j</groupId>
+ <artifactId>log4j-to-slf4j</artifactId>
+ <version>${log4j2.version}</version>
+ </dependency>
<dependency>
<groupId>org.apache.ranger</groupId>
<artifactId>credentialbuilder</artifactId>
diff --git
a/ugsync-util/src/main/java/org/apache/ranger/ugsyncutil/model/XUserInfo.java
b/ugsync-util/src/main/java/org/apache/ranger/ugsyncutil/model/XUserInfo.java
index 2a2e01e1a..8012f15d9 100644
---
a/ugsync-util/src/main/java/org/apache/ranger/ugsyncutil/model/XUserInfo.java
+++
b/ugsync-util/src/main/java/org/apache/ranger/ugsyncutil/model/XUserInfo.java
@@ -27,6 +27,7 @@ import java.util.Map;
public class XUserInfo {
private String id;
private String name;
+ private String firstName;
private String description;
private String otherAttributes;
private String syncSource;
@@ -53,6 +54,10 @@ public class XUserInfo {
this.name = name;
}
+ public String getFirstName() { return firstName; }
+
+ public void setFirstName(String firstName) { this.firstName =
firstName; }
+
public String getDescription() {
return description;
}
@@ -135,7 +140,7 @@ public class XUserInfo {
@Override
public String toString() {
- return "XUserInfo [id=" + id + ", name=" + name + ", description="
+ return "XUserInfo [id=" + id + ", name=" + name + ", firstName=" +
firstName + ", description="
+ description + ", groupNameList=" + groupNameList
+ ", userRoleList=" + userRoleList + "]";
}
diff --git a/ugsync/pom.xml b/ugsync/pom.xml
index 12801d4e2..62e6b41ce 100644
--- a/ugsync/pom.xml
+++ b/ugsync/pom.xml
@@ -68,6 +68,26 @@
<artifactId>commons-text</artifactId>
<version>${commons.text.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>log4j-over-slf4j</artifactId>
+ <version>${slf4j.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.logging.log4j</groupId>
+ <artifactId>log4j-api</artifactId>
+ <version>${log4j2.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.logging.log4j</groupId>
+ <artifactId>log4j-to-slf4j</artifactId>
+ <version>${log4j2.version}</version>
+ </dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
diff --git
a/ugsync/src/main/java/org/apache/ranger/unixusersync/process/PolicyMgrUserGroupBuilder.java
b/ugsync/src/main/java/org/apache/ranger/unixusersync/process/PolicyMgrUserGroupBuilder.java
index 0aa419f3f..aabd9edb9 100644
---
a/ugsync/src/main/java/org/apache/ranger/unixusersync/process/PolicyMgrUserGroupBuilder.java
+++
b/ugsync/src/main/java/org/apache/ranger/unixusersync/process/PolicyMgrUserGroupBuilder.java
@@ -877,6 +877,7 @@ public class PolicyMgrUserGroupBuilder extends
AbstractUserGroupSource implement
private XUserInfo addXUserInfo(String aUserName, Map<String, String>
otherAttrsMap, String otherAttributes) {
XUserInfo xuserInfo = new XUserInfo();
xuserInfo.setName(aUserName);
+ xuserInfo.setFirstName(aUserName);
xuserInfo.setDescription(aUserName + " - add from Unix box");
xuserInfo.setUserSource(SOURCE_EXTERNAL);
xuserInfo.setStatus(STATUS_ENABLED);