in src/main/java/org/opensearch/commons/authuser/User.java [181:206]
public static User parse(final String userString) {
if (Strings.isNullOrEmpty(userString)) {
return null;
}
String[] strs = userString.split("\\|");
if ((strs.length == 0) || (Strings.isNullOrEmpty(strs[0]))) {
return null;
}
String userName = strs[0].trim();
List<String> backendRoles = new ArrayList<>();
List<String> roles = new ArrayList<>();
String requestedTenant = null;
if ((strs.length > 1) && !Strings.isNullOrEmpty(strs[1])) {
backendRoles.addAll(Arrays.asList(strs[1].split(",")));
}
if ((strs.length > 2) && !Strings.isNullOrEmpty(strs[2])) {
roles.addAll(Arrays.asList(strs[2].split(",")));
}
if ((strs.length > 3) && !Strings.isNullOrEmpty(strs[3])) {
requestedTenant = strs[3].trim();
}
return new User(userName, backendRoles, roles, Arrays.asList(), requestedTenant);
}