1
package edu.ucsb.eucalyptus.msgs;
3
import java.security.cert.X509Certificate;
4
import java.util.ArrayList;
5
import com.eucalyptus.auth.principal.User;
6
import com.eucalyptus.auth.Groups;
8
public class UserInfoType extends EucalyptusData {
13
Boolean admin = Boolean.FALSE;
14
Boolean enabled = Boolean.FALSE;
15
String distinguishedName;
16
String certificateSerial;
17
String certificateCode;
18
String confirmationCode;
19
ArrayList<String> groups = new ArrayList<String>();
20
ArrayList<String> revoked = new ArrayList<String>();
22
public UserInfoType( User u, String email, String confirmationCode ) {
23
this.userName = u.getName();
24
this.accessKey = u.getQueryId();
25
this.secretKey = u.getSecretKey();
26
this.distinguishedName = u.getX509Certificate( )?.getSubjectX500Principal( )?.toString();
27
this.certificateSerial = u.getX509Certificate( )?.getSerialNumber( );
28
for( X509Certificate x : u.getAllX509Certificates() ) {
29
if( !this.certificateSerial.equals(x.getSerialNumber().toString())) {
30
this.revoked.add( x.getSerialNumber().toString() );
33
for( Group g : Groups.lookupUserGroups( u ) ) {
34
this.groups.add( g.getName() );
36
this.enabled = u.isEnabled( );
37
this.admin = u.isAdministrator( );
39
this.certificateCode = u.getToken();
40
this.confirmationCode = confirmationCode;
43
public class GroupInfoType extends EucalyptusData {
45
ArrayList<String> users = new ArrayList<String>();
46
ArrayList<String> authorizations = new ArrayList<String>();
47
public GroupInfoType( String name ) {
48
this.groupName = name;
51
public class ManagementMessage extends EucalyptusMessage {}
52
public class UserManagementMessage extends ManagementMessage {}
54
public class DescribeUsersType extends UserManagementMessage {
55
ArrayList<String> userNames = new ArrayList<String>();
57
public class DescribeUsersResponseType extends UserManagementMessage {
58
ArrayList<UserInfoType> users = new ArrayList<UserInfoType>();
60
public class AddUserType extends UserManagementMessage {
66
public class AddUserResponseType extends UserManagementMessage {}
67
public class DeleteUserType extends UserManagementMessage {
70
public class DeleteUserResponseType extends UserManagementMessage {}
73
public class GroupManagementMessage extends ManagementMessage {}
74
public class DescribeGroupsType extends GroupManagementMessage {
75
ArrayList<String> groupNames = new ArrayList<String>();
77
public class DescribeGroupsResponseType extends GroupManagementMessage {
78
ArrayList<GroupInfoType> groups = new ArrayList<GroupInfoType>();
80
public class AddGroupType extends GroupManagementMessage {
83
public class AddGroupResponseType extends GroupManagementMessage {}
84
public class DeleteGroupType extends EucalyptusMessage {
87
public class DeleteGroupResponseType extends GroupManagementMessage {}
88
public class AddGroupMemberType extends GroupManagementMessage {
93
public class AddGroupMemberResponseType extends GroupManagementMessage {}
94
public class DeleteGroupMemberType extends EucalyptusMessage {
98
public class DeleteGroupMemberResponseType extends GroupManagementMessage {}
100
public class GrantGroupAdminType extends EucalyptusMessage {
104
public class GrantGroupAdminResponseType extends GroupManagementMessage {}
105
public class RevokeGroupAdminType extends GroupManagementMessage {
109
public class RevokeGroupAdminResponseType extends GroupManagementMessage {}