You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ranger.apache.org by ma...@apache.org on 2023/03/25 22:37:19 UTC
[ranger] branch ranger-2.4 updated: RANGER-4154: updated usersync to populate firstName for users
This is an automated email from the ASF dual-hosted git repository.
madhan pushed a commit to branch ranger-2.4
in repository https://gitbox.apache.org/repos/asf/ranger.git
The following commit(s) were added to refs/heads/ranger-2.4 by this push:
new 8e2d48f3d RANGER-4154: updated usersync to populate firstName for users
8e2d48f3d is described below
commit 8e2d48f3ddcf32596bb55e811e238ce4e795cb6c
Author: Madhan Neethiraj <ma...@apache.org>
AuthorDate: Fri Mar 24 02:40:07 2023 -0700
RANGER-4154: updated usersync to populate firstName for users
---
.../main/java/org/apache/ranger/biz/XUserMgr.java | 26 ++++++++++------------
tagsync/pom.xml | 21 ++++++++++++++---
.../apache/ranger/ugsyncutil/model/XUserInfo.java | 7 +++++-
ugsync/pom.xml | 21 ++++++++++++++---
.../process/PolicyMgrUserGroupBuilder.java | 1 +
5 files changed, 55 insertions(+), 21 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 e23fe6327..190a57d32 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
@@ -2614,37 +2614,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 1434e27c0..905cbfac0 100644
--- a/tagsync/pom.xml
+++ b/tagsync/pom.xml
@@ -86,9 +86,24 @@
<version>${commons.text.version}</version>
</dependency>
<dependency>
- <groupId>commons-logging</groupId>
- <artifactId>commons-logging</artifactId>
- <version>${commons.logging.version}</version>
+ <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>
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 91af4511e..45ca90850 100644
--- a/ugsync/pom.xml
+++ b/ugsync/pom.xml
@@ -69,9 +69,24 @@
<version>${commons.text.version}</version>
</dependency>
<dependency>
- <groupId>commons-logging</groupId>
- <artifactId>commons-logging</artifactId>
- <version>${commons.logging.version}</version>
+ <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>
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 bca833d08..aa701d13f 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
@@ -882,6 +882,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);