Revision 8475
Added by Jing Tao about 11 years ago
src/edu/ucsb/nceas/metacat/authentication/AuthFile.java | ||
---|---|---|
96 | 96 |
private static final String GIVENNAME = "givenName"; |
97 | 97 |
private static final String INITCONTENT = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n"+ |
98 | 98 |
"<"+SUBJECTS+">\n"+"<"+USERS+">\n"+"</"+USERS+">\n"+"<"+GROUPS+">\n"+"</"+GROUPS+">\n"+"</"+SUBJECTS+">\n"; |
99 |
|
|
99 | 100 |
|
100 |
private static final byte[] SALT = { |
|
101 |
(byte) 0xde, (byte) 0x33, (byte) 0x10, (byte) 0x12, |
|
102 |
(byte) 0xde, (byte) 0x33, (byte) 0x10, (byte) 0x12, |
|
103 |
}; |
|
101 |
|
|
104 | 102 |
private static Log log = LogFactory.getLog(AuthFile.class); |
105 | 103 |
private static AuthFile authFile = null; |
106 | 104 |
private static XMLConfiguration userpassword = null; |
... | ... | |
211 | 209 |
User aUser = new User(); |
212 | 210 |
String dn = (String)users.get(i); |
213 | 211 |
aUser.setDN(dn); |
214 |
usersArray[i][0] = dn; //dn
|
|
212 |
usersArray[i][AuthInterface.USERDNINDEX] = dn; //dn
|
|
215 | 213 |
String surname = null; |
216 | 214 |
List<Object> surNames = userpassword.getList(USERS+SLASH+USER+"["+AT+DN+"='"+dn+"']"+SLASH+SURNAME); |
217 | 215 |
if(surNames != null && !surNames.isEmpty()) { |
... | ... | |
224 | 222 |
givenName = (String)givenNames.get(0); |
225 | 223 |
} |
226 | 224 |
aUser.setGivenName(givenName); |
227 |
usersArray[i][1] = aUser.getCn();//common name
|
|
228 |
usersArray[i][2] = null;//organization name. We set null
|
|
229 |
usersArray[i][3] = null;//organization ou name. We set null.
|
|
225 |
usersArray[i][AuthInterface.USERCNINDEX] = aUser.getCn();//common name
|
|
226 |
usersArray[i][AuthInterface.USERORGINDEX] = null;//organization name. We set null
|
|
227 |
usersArray[i][AuthInterface.USERORGUNITINDEX] = null;//organization ou name. We set null.
|
|
230 | 228 |
List<Object> emails = userpassword.getList(USERS+SLASH+USER+"["+AT+DN+"='"+dn+"']"+SLASH+EMAIL); |
231 | 229 |
String email = null; |
232 | 230 |
if(emails != null && !emails.isEmpty() ) { |
233 | 231 |
email = (String)emails.get(0); |
234 | 232 |
} |
235 |
usersArray[i][4] = email;
|
|
233 |
usersArray[i][AuthInterface.USEREMAILINDEX] = email;
|
|
236 | 234 |
|
237 | 235 |
} |
238 | 236 |
return usersArray; |
... | ... | |
285 | 283 |
String[][] groupsArray = new String[groups.size()][2]; |
286 | 284 |
for(int i=0; i<groups.size(); i++) { |
287 | 285 |
String groupName = (String) groups.get(i); |
288 |
groupsArray[i][0] = groupName;
|
|
286 |
groupsArray[i][AuthInterface.GROUPNAMEINDEX] = groupName;
|
|
289 | 287 |
String description = null; |
290 | 288 |
List<Object>descriptions = userpassword.getList(GROUPS+SLASH+GROUP+"["+AT+NAME+"='"+groupName+"']"+SLASH+DESCRIPTION); |
291 | 289 |
if(descriptions != null && !descriptions.isEmpty()) { |
292 | 290 |
description = (String)descriptions.get(0); |
293 | 291 |
} |
294 |
groupsArray[i][1] = description;
|
|
292 |
groupsArray[i][AuthInterface.GROUPDESINDEX] = description;
|
|
295 | 293 |
} |
296 | 294 |
return groupsArray; |
297 | 295 |
} |
... | ... | |
310 | 308 |
String[][] groupsArray = new String[groups.size()][2]; |
311 | 309 |
for(int i=0; i<groups.size(); i++) { |
312 | 310 |
String groupName = (String) groups.get(i); |
313 |
groupsArray[i][0] = groupName;
|
|
311 |
groupsArray[i][AuthInterface.GROUPNAMEINDEX] = groupName;
|
|
314 | 312 |
String description = null; |
315 | 313 |
List<Object>descriptions = userpassword.getList(GROUPS+SLASH+GROUP+"["+AT+NAME+"='"+groupName+"']"+SLASH+DESCRIPTION); |
316 | 314 |
if(descriptions != null && !descriptions.isEmpty()) { |
317 | 315 |
description = (String)descriptions.get(0); |
318 | 316 |
} |
319 |
groupsArray[i][1] = description;
|
|
317 |
groupsArray[i][AuthInterface.GROUPDESINDEX] = description;
|
|
320 | 318 |
} |
321 | 319 |
return groupsArray; |
322 | 320 |
} |
... | ... | |
356 | 354 |
if (groups != null && users != null && groups.length > 0) { |
357 | 355 |
for (int i = 0; i < groups.length; i++) { |
358 | 356 |
out.append(" <group>\n"); |
359 |
out.append(" <groupname>" + groups[i][0] + "</groupname>\n");
|
|
357 |
out.append(" <groupname>" + groups[i][AuthInterface.GROUPNAMEINDEX] + "</groupname>\n");
|
|
360 | 358 |
if(groups[i].length > 1) { |
361 |
out.append(" <description>" + groups[i][1] + "</description>\n");
|
|
359 |
out.append(" <description>" + groups[i][AuthInterface.GROUPDESINDEX] + "</description>\n");
|
|
362 | 360 |
} |
363 | 361 |
String[] usersForGroup = getUsers(user, password, groups[i][0]); |
364 | 362 |
if(usersForGroup != null) { |
... | ... | |
372 | 370 |
} else { |
373 | 371 |
out.append(" <username>" + users[userIndex][0] |
374 | 372 |
+ "</username>\n"); |
375 |
if(users[userIndex].length >=2) {
|
|
376 |
out.append(" <name>" + users[userIndex][1]
|
|
373 |
if(users[userIndex][AuthInterface.USERCNINDEX] != null) {
|
|
374 |
out.append(" <name>" + users[userIndex][AuthInterface.USERCNINDEX]
|
|
377 | 375 |
+ "</name>\n"); |
378 | 376 |
} |
379 |
if(users[userIndex].length >=3) { |
|
380 |
out.append(" <email>" + users[userIndex][2] |
|
377 |
if(users[userIndex][AuthInterface.USERORGINDEX] != null) { |
|
378 |
out.append(" <organization>" + users[userIndex][AuthInterface.USERORGINDEX] |
|
379 |
+ "</organization>\n"); |
|
380 |
} |
|
381 |
|
|
382 |
if(users[userIndex][AuthInterface.USERORGUNITINDEX] != null) { |
|
383 |
out.append(" <organizationUnitName>" |
|
384 |
+ users[userIndex][AuthInterface.USERORGUNITINDEX] |
|
385 |
+ "</organizationUnitName>\n"); |
|
386 |
} |
|
387 |
if(users[userIndex][AuthInterface.USEREMAILINDEX] != null) { |
|
388 |
out.append(" <email>" + users[userIndex][AuthInterface.USEREMAILINDEX] |
|
381 | 389 |
+ "</email>\n"); |
382 | 390 |
} |
383 | 391 |
|
... | ... | |
396 | 404 |
for (int j = 0; j < users.length; j++) { |
397 | 405 |
out.append(" <user>\n"); |
398 | 406 |
out.append(" <username>" + users[j][0] + "</username>\n"); |
399 |
if(users[userIndex].length >=2) { |
|
400 |
out.append(" <name>" + users[j][1] + "</name>\n"); |
|
407 |
if(users[j][AuthInterface.USERCNINDEX] != null) { |
|
408 |
out.append(" <name>" + users[j][AuthInterface.USERCNINDEX] |
|
409 |
+ "</name>\n"); |
|
401 | 410 |
} |
402 |
if(users[userIndex].length >=3) { |
|
403 |
out.append(" <email>" + users[j][2] + "</email>\n"); |
|
411 |
if(users[j][AuthInterface.USERORGINDEX] != null) { |
|
412 |
out.append(" <organization>" + users[j][AuthInterface.USERORGINDEX] |
|
413 |
+ "</organization>\n"); |
|
404 | 414 |
} |
415 |
|
|
416 |
if(users[j][AuthInterface.USERORGUNITINDEX] != null) { |
|
417 |
out.append(" <organizationUnitName>" |
|
418 |
+ users[j][AuthInterface.USERORGUNITINDEX] |
|
419 |
+ "</organizationUnitName>\n"); |
|
420 |
} |
|
421 |
if(users[j][AuthInterface.USEREMAILINDEX] != null) { |
|
422 |
out.append(" <email>" + users[j][AuthInterface.USEREMAILINDEX] |
|
423 |
+ "</email>\n"); |
|
424 |
} |
|
405 | 425 |
|
406 | 426 |
out.append(" </user>\n"); |
407 | 427 |
} |
Also available in: Unified diff
Add the common name, organization name and email into the getprincipal method.