Java 类com.amazonaws.services.identitymanagement.model.AttachRolePolicyRequest 实例源码

项目:strongbox    文件:IAMPolicyManagerTest.java   
@Test
public void testAttachReadonlyRole() throws Exception {
    Principal principal = new Principal(PrincipalType.ROLE, "awesome-service");
    partiallyMockedPolicyManager.attachReadOnly(group, principal);

    // Just verifies that the attachRolePolicy method was called with the correct details.
    AttachRolePolicyRequest request = new AttachRolePolicyRequest()
            .withPolicyArn(READONLY_POLICY_ARN)
            .withRoleName(principal.name);
    verify(mockClient, times(1)).attachRolePolicy(request);
}
项目:aws-doc-sdk-examples    文件:AttachRolePolicy.java   
public static void main(String[] args) {
    final String USAGE =
        "To run this example, supply a role name\n" +
        "Ex: AttachRolePolicy <role-name>\n";

    if (args.length != 1) {
        System.out.println(USAGE);
        System.exit(1);
    }

    String role_name = args[0];

    final AmazonIdentityManagement iam =
        AmazonIdentityManagementClientBuilder.defaultClient();

    ListAttachedRolePoliciesRequest request =
        new ListAttachedRolePoliciesRequest()
            .withRoleName(role_name);

    List<AttachedPolicy> matching_policies = new ArrayList<>();

    boolean done = false;

    while(!done) {
        ListAttachedRolePoliciesResult response =
            iam.listAttachedRolePolicies(request);

        matching_policies.addAll(
                response.getAttachedPolicies()
                        .stream()
                        .filter(p -> p.getPolicyName().equals(role_name))
                        .collect(Collectors.toList()));

        if(!response.getIsTruncated()) {
            done = true;
        }
        request.setMarker(response.getMarker());
    }

    if (matching_policies.size() > 0) {
        System.out.println(role_name +
                " policy is already attached to this role.");
        return;
    }

    AttachRolePolicyRequest attach_request =
        new AttachRolePolicyRequest()
            .withRoleName(role_name)
            .withPolicyArn(POLICY_ARN);

    iam.attachRolePolicy(attach_request);

    System.out.println("Successfully attached policy " + POLICY_ARN +
            " to role " + role_name);
}