Question:
I’m trying to figure out how to create a new user with AWS APIs for Java, but i can’t figure out what i need to do.
So far i managed to write this code that gives me a CreateUserRequest, a CreateAccessKeyRequest and a BasicAWSCredentials with all the fields filled.
I just can’t figure out what to do next. Do I have to use CreateUserResult? How?
1 2 3 4 5 6 7 8 9 10 11 12 |
CreateUserRequest user = new CreateUserRequest("userName"); CreateAccessKeyRequest key = new CreateAccessKeyRequest(); BasicAWSCredentials cred = new BasicAWSCredentials("access", "secret"); key.withUserName(user.getUserName()); key.setRequestCredentials(cred); user.setRequestCredentials(key.getRequestCredentials()); user.setPath("/"); |
EDIT: I’m still working on this today.
I think I need to use the createUser(CreateUserRequest) method of AmazonIdentityManagementClient class. (which returns a CreateUserResult, I was not supposed to instantiate this class manually)
Problem is, I don’t know how to properly initialize this class with the right AWSCredentials (I’m using the account’s AccessKey and SecretAccessKey).
Answer:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
CreateUserRequest user = new CreateUserRequest("userName"); CreateAccessKeyRequest key = new CreateAccessKeyRequest(); BasicAWSCredentials cred = new BasicAWSCredentials("access", "secret"); key.withUserName(user.getUserName()); key.setRequestCredentials(cred); user.setRequestCredentials(key.getRequestCredentials()); user.setPath("/"); AmazonIdentityManagementClient client = new AmazonIdentityManagementClient(cred); CreateUserResult result = client.createUser(user); |