com.amazonaws.services.identitymanagement.model.ListRolesResult Java Examples
The following examples show how to use
com.amazonaws.services.identitymanagement.model.ListRolesResult.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: InventoryUtil.java From pacbot with Apache License 2.0 | 6 votes |
/** * Fetch IAM roles. * * @param temporaryCredentials the temporary credentials * @param accountId the accountId * @param accountName the account name * @return the map */ public static Map<String,List<Role>> fetchIAMRoles(BasicSessionCredentials temporaryCredentials,String accountId,String accountName) { AmazonIdentityManagement iamClient = AmazonIdentityManagementClientBuilder.standard().withCredentials(new AWSStaticCredentialsProvider(temporaryCredentials)).withRegion(InventoryConstants.REGION_US_WEST_2).build(); List<Role> roles = new ArrayList<>(); ListRolesResult rslt; String marker = null; do{ rslt = iamClient.listRoles(new ListRolesRequest().withMarker(marker)); roles.addAll(rslt.getRoles()); marker = rslt.getMarker(); }while(marker!=null); log.debug(InventoryConstants.ACCOUNT + accountId +" Type : IAM Roles >> "+roles.size()); Map<String,List<Role>> iamRoles = new HashMap<>(); iamRoles.put(accountId+delimiter+accountName, roles); return iamRoles; }
Example #2
Source File: InventoryUtilTest.java From pacbot with Apache License 2.0 | 6 votes |
/** * Fetch IAM roles test. * * @throws Exception the exception */ @SuppressWarnings("static-access") @Test public void fetchIAMRolesTest() throws Exception { mockStatic(AmazonIdentityManagementClientBuilder.class); AmazonIdentityManagement iamClient = PowerMockito.mock(AmazonIdentityManagement.class); AmazonIdentityManagementClientBuilder amazonIdentityManagementClientBuilder = PowerMockito.mock(AmazonIdentityManagementClientBuilder.class); AWSStaticCredentialsProvider awsStaticCredentialsProvider = PowerMockito.mock(AWSStaticCredentialsProvider.class); PowerMockito.whenNew(AWSStaticCredentialsProvider.class).withAnyArguments().thenReturn(awsStaticCredentialsProvider); when(amazonIdentityManagementClientBuilder.standard()).thenReturn(amazonIdentityManagementClientBuilder); when(amazonIdentityManagementClientBuilder.withCredentials(anyObject())).thenReturn(amazonIdentityManagementClientBuilder); when(amazonIdentityManagementClientBuilder.withRegion(anyString())).thenReturn(amazonIdentityManagementClientBuilder); when(amazonIdentityManagementClientBuilder.build()).thenReturn(iamClient); ListRolesResult listRolesResult = new ListRolesResult(); List<Role> roles = new ArrayList<>(); roles.add(new Role()); listRolesResult.setRoles(roles); when(iamClient.listRoles(anyObject())).thenReturn(listRolesResult); assertThat(inventoryUtil.fetchIAMRoles(new BasicSessionCredentials("awsAccessKey", "awsSecretKey", "sessionToken"),"account","accountName").size(), is(1)); }
Example #3
Source File: PrincipalAutoSuggestionTest.java From strongbox with Apache License 2.0 | 6 votes |
@Test public void testAutoSuggestion() throws Exception { ListRolesRequest request = new ListRolesRequest().withMaxItems(1000); Role role1 = new Role().withRoleName("foobar1"); Role role2 = new Role().withRoleName("afoobar"); Role role3 = new Role().withRoleName("foooobar"); ListRolesResult mockResult = new ListRolesResult(); mockResult.withRoles(role1, role2, role3); when(mockClient.listRoles(request)).thenReturn(mockResult); List<Principal> list = partiallyMockedPrincipalAutoSuggestion.autoSuggestion("foobar"); assertEquals(list.size(), 2); assertEquals(list.get(0).name, "foobar1"); assertEquals(list.get(1).name, "afoobar"); verify(mockClient, times(1)).listRoles(request); }
Example #4
Source File: PrincipalAutoSuggestionTest.java From strongbox with Apache License 2.0 | 6 votes |
@Test public void testAutoSuggestionCaseInsensitive() throws Exception { ListRolesRequest request = new ListRolesRequest().withMaxItems(1000); Role lowercase = new Role().withRoleName("foobar"); Role uppercase = new Role().withRoleName("FOOBAR"); Role mixedCase = new Role().withRoleName("FooBar"); ListRolesResult mockResult = new ListRolesResult(); mockResult.withRoles(lowercase, uppercase, mixedCase); when(mockClient.listRoles(request)).thenReturn(mockResult); List<Principal> list = partiallyMockedPrincipalAutoSuggestion.autoSuggestion("fOOb"); assertEquals(list.size(), 3); assertEquals(list.get(0).name, "foobar"); assertEquals(list.get(1).name, "FOOBAR"); assertEquals(list.get(2).name, "FooBar"); }
Example #5
Source File: CrossAccountPolicyForIAMJobTest.java From fullstop with Apache License 2.0 | 6 votes |
@Before public void setUp() throws Exception { this.violationSinkMock = mock(ViolationSink.class); this.clientProviderMock = mock(ClientProvider.class); this.accountIdSupplierMock = mock(AccountIdSupplier.class); this.jobsPropertiesMock = mock(JobsProperties.class); this.mockAmazonIdentityManagementClient = mock(AmazonIdentityManagementClient.class); this.mockAwsApplications = mock(AwsApplications.class); mockListRolesResult = new ListRolesResult(); mockListRolesResult.setRoles(asList( createRole("aws-service-role", AWS_SERVICE_POLICY_DOCUMENT), createRole("cross-account-role", CROSS_ACCOUNT_POLICY_DOCUMENT), createRole("same-account-role", SAME_ACCOUNT_POLICY_DOCUMENT), createRole("deleted-role-reference-role", DELETED_ROLE_POLICY_DOCUMENT), createRole("management-account-role", MANAGEMENT_POLICY_DOCUMENT))); when(clientProviderMock.getClient(any(), any(String.class), any(Region.class))).thenReturn(mockAmazonIdentityManagementClient); }
Example #6
Source File: PrincipalAutoSuggestion.java From strongbox with Apache License 2.0 | 5 votes |
public List<Principal> autoSuggestion(final String name) { if (name.length() >= 3) { String lowerCaseName = name.toLowerCase(); ListRolesRequest listRolesRequest = new ListRolesRequest(); listRolesRequest.withMaxItems(1000); ListRolesResult result = client.listRoles(listRolesRequest); List<Principal> tmp = result.getRoles().stream() .filter(p -> p.getRoleName().toLowerCase().contains(lowerCaseName)) .map(p -> new Principal(PrincipalType.ROLE, p.getRoleName())).collect(Collectors.toList()); return tmp.subList(0, Math.min(5, tmp.size())); } return new ArrayList<>(); }
Example #7
Source File: AwsPlatformResources.java From cloudbreak with Apache License 2.0 | 5 votes |
private Set<CloudAccessConfig> getAccessConfigByRole(AmazonIdentityManagement client) { LOGGER.info("Get all Roles from Amazon"); String queryFailedMessage = "Could not get roles from Amazon: "; try { boolean finished = false; String marker = null; List<Role> roles = new LinkedList<>(); while (!finished) { ListRolesRequest listRolesRequest = new ListRolesRequest(); listRolesRequest.setMaxItems(fetchMaxItems); if (isNotEmpty(marker)) { listRolesRequest.setMarker(marker); } LOGGER.debug("About to fetch roles..."); ListRolesResult listRolesResult = client.listRoles(listRolesRequest); roles.addAll(listRolesResult.getRoles()); if (listRolesResult.isTruncated()) { marker = listRolesResult.getMarker(); } else { finished = true; } } return roles.stream().map(this::roleToCloudAccessConfig).collect(Collectors.toSet()); } catch (AmazonServiceException ase) { if (ase.getStatusCode() == UNAUTHORIZED) { String policyMessage = "Could not get roles because the user does not have enough permission. "; LOGGER.error(policyMessage + ase.getMessage(), ase); throw new CloudUnauthorizedException(ase.getErrorMessage(), ase); } else { LOGGER.info(queryFailedMessage + ase.getMessage(), ase); throw new CloudConnectorException(ase.getMessage(), ase); } } catch (Exception e) { LOGGER.warn(queryFailedMessage + e.getMessage(), e); throw new CloudConnectorException(e.getMessage(), e); } }