/** * Simplified method form for invoking the DescribeSecurityGroups operation with an AsyncHandler. * * @see #describeSecurityGroupsAsync(DescribeSecurityGroupsRequest, com.amazonaws.handlers.AsyncHandler) */ @Override public java.util.concurrent.Future<DescribeSecurityGroupsResult> describeSecurityGroupsAsync( com.amazonaws.handlers.AsyncHandler<DescribeSecurityGroupsRequest, DescribeSecurityGroupsResult> asyncHandler) { return describeSecurityGroupsAsync(new DescribeSecurityGroupsRequest(), asyncHandler); }
new DescribeSecurityGroupsRequest() .withGroupNames(securityGroupName);
/** * <p> * One or more security group IDs. Required for security groups in a nondefault VPC. * </p> * <p> * Default: Describes all your security groups. * </p> * * @param groupIds * One or more security group IDs. Required for security groups in a nondefault VPC.</p> * <p> * Default: Describes all your security groups. * @return Returns a reference to this object so that method calls can be chained together. */ public DescribeSecurityGroupsRequest withGroupIds(java.util.Collection<String> groupIds) { setGroupIds(groupIds); return this; }
protected String getVpcGoupId() { AmazonEC2 client = null; try { client = getEc2Client(); Filter nameFilter = new Filter().withName("group-name").withValues(config.getACLGroupName()); // SG Filter vpcFilter = new Filter().withName("vpc-id").withValues(instanceInfo.getVpcId()); DescribeSecurityGroupsRequest req = new DescribeSecurityGroupsRequest().withFilters(nameFilter, vpcFilter); DescribeSecurityGroupsResult result = client.describeSecurityGroups(req); for (SecurityGroup group : result.getSecurityGroups()) { logger.debug( "got group-id:{} for group-name:{},vpc-id:{}", group.getGroupId(), config.getACLGroupName(), instanceInfo.getVpcId()); return group.getGroupId(); } logger.error( "unable to get group-id for group-name={} vpc-id={}", config.getACLGroupName(), instanceInfo.getVpcId()); return ""; } finally { if (client != null) client.shutdown(); } }
new DescribeSecurityGroupsRequest() .withGroupNames( Collections.singletonList(config.getACLGroupName())); DescribeSecurityGroupsResult result = client.describeSecurityGroups(req); new DescribeSecurityGroupsRequest().withFilters(nameFilter, vpcFilter); DescribeSecurityGroupsResult result = client.describeSecurityGroups(req); for (SecurityGroup group : result.getSecurityGroups())
public SecurityGroup findOneSecurityGroupByName(String securityGroupName) { DescribeSecurityGroupsRequest securityRequest = new DescribeSecurityGroupsRequest(); securityRequest.setGroupNames(Arrays.asList(securityGroupName)); DescribeSecurityGroupsResult securityDescription = ec2.describeSecurityGroups(securityRequest); return securityDescription.getSecurityGroups().get(0); }
@Override public Map<String, SecurityGroupCheckDetails> check(final Collection<String> groupIds, final String account, final Region region) { final DescribeSecurityGroupsRequest describeSecurityGroupsRequest = new DescribeSecurityGroupsRequest(); describeSecurityGroupsRequest.setGroupIds(groupIds); final AmazonEC2Client amazonEC2Client = clientProvider.getClient( AmazonEC2Client.class, account, region); final DescribeSecurityGroupsResult describeSecurityGroupsResult = amazonEC2Client.describeSecurityGroups( describeSecurityGroupsRequest); final ImmutableMap.Builder<String, SecurityGroupCheckDetails> result = ImmutableMap.builder(); for (final SecurityGroup securityGroup : describeSecurityGroupsResult.getSecurityGroups()) { final List<String> offendingRules = securityGroup.getIpPermissions().stream() .filter(isOffending) .map(Object::toString) .collect(toList()); if (!offendingRules.isEmpty()) { final SecurityGroupCheckDetails details = new SecurityGroupCheckDetails( securityGroup.getGroupName(), ImmutableList.copyOf(offendingRules)); result.put(securityGroup.getGroupId(), details); } } return result.build(); } }
/** * <p> * [EC2-Classic and default VPC only] One or more security group names. You can specify either the security group * name or the security group ID. For security groups in a nondefault VPC, use the <code>group-name</code> filter to * describe security groups by name. * </p> * <p> * Default: Describes all your security groups. * </p> * * @param groupNames * [EC2-Classic and default VPC only] One or more security group names. You can specify either the security * group name or the security group ID. For security groups in a nondefault VPC, use the * <code>group-name</code> filter to describe security groups by name.</p> * <p> * Default: Describes all your security groups. * @return Returns a reference to this object so that method calls can be chained together. */ public DescribeSecurityGroupsRequest withGroupNames(java.util.Collection<String> groupNames) { setGroupNames(groupNames); return this; }
/** * One or more security group IDs. Required for security groups in a * nondefault VPC. <p>Default: Describes all your security groups. * <p> * Returns a reference to this object so that method calls can be chained together. * * @param groupIds One or more security group IDs. Required for security groups in a * nondefault VPC. <p>Default: Describes all your security groups. * * @return A reference to this updated object so that method calls can be chained * together. */ public DescribeSecurityGroupsRequest withGroupIds(String... groupIds) { if (getGroupIds() == null) setGroupIds(new java.util.ArrayList<String>(groupIds.length)); for (String value : groupIds) { getGroupIds().add(value); } return this; }
/** * [EC2-Classic and default VPC only] One or more security group names. * You can specify either the security group name or the security group * ID. For security groups in a nondefault VPC, use the * <code>group-name</code> filter to describe security groups by name. * <p>Default: Describes all your security groups. * <p> * Returns a reference to this object so that method calls can be chained together. * * @param groupNames [EC2-Classic and default VPC only] One or more security group names. * You can specify either the security group name or the security group * ID. For security groups in a nondefault VPC, use the * <code>group-name</code> filter to describe security groups by name. * <p>Default: Describes all your security groups. * * @return A reference to this updated object so that method calls can be chained * together. */ public DescribeSecurityGroupsRequest withGroupNames(String... groupNames) { if (getGroupNames() == null) setGroupNames(new java.util.ArrayList<String>(groupNames.length)); for (String value : groupNames) { getGroupNames().add(value); } return this; }
private DescribeSecurityGroupsResult getSecurityGroupsBy(String filterName, Set<String> filterValues, AmazonEC2 ec2) { DescribeSecurityGroupsRequest groupReq = new DescribeSecurityGroupsRequest(); groupReq.withFilters(new Filter(filterName).withValues(filterValues)); return ec2.describeSecurityGroups(groupReq); }
/** * * @param groupIds * @param ec2Client * @return */ public List<SecurityGroup> getSecurityGroups(List<String> groupIds, AmazonEC2 ec2Client) { DescribeSecurityGroupsRequest request = new DescribeSecurityGroupsRequest(); if (groupIds != null && !groupIds.isEmpty()) { request = request.withGroupIds(groupIds); } DescribeSecurityGroupsResult result = ec2Client.describeSecurityGroups(request); return result.getSecurityGroups(); }
@Override public Optional<SecurityGroup> getSecurityGroup(String name) { checkNotBlank(name, "name"); List<String> names = getSecurityGroupNames(); if (names.contains(name)) { DescribeSecurityGroupsRequest request = new DescribeSecurityGroupsRequest(); request.setGroupNames(Collections.singletonList(name)); DescribeSecurityGroupsResult result = client.describeSecurityGroups(request); List<SecurityGroup> groups = result.getSecurityGroups(); checkState(groups.size() == 1, "Expected exactly 1 security group but there were %s instead", groups.size()); SecurityGroup group = groups.get(0); return Optional.of(group); } else { return Optional.<SecurityGroup> absent(); } }
final DescribeSecurityGroupsRequest request = new DescribeSecurityGroupsRequest(); request.setGroupIds(securityGroupIds); result = amazonEC2Client.describeSecurityGroups(request); } catch (final AmazonServiceException e) {
setGroupNames(new com.amazonaws.internal.SdkInternalList<String>(groupNames.length));
/** * Simplified method form for invoking the DescribeSecurityGroups operation with an AsyncHandler. * * @see #describeSecurityGroupsAsync(DescribeSecurityGroupsRequest, com.amazonaws.handlers.AsyncHandler) */ @Override public java.util.concurrent.Future<DescribeSecurityGroupsResult> describeSecurityGroupsAsync( com.amazonaws.handlers.AsyncHandler<DescribeSecurityGroupsRequest, DescribeSecurityGroupsResult> asyncHandler) { return describeSecurityGroupsAsync(new DescribeSecurityGroupsRequest(), asyncHandler); }
@Override public Collection<IpRule> getRules( final String name, final boolean inbound ) { DescribeSecurityGroupsRequest request = new DescribeSecurityGroupsRequest().withGroupNames( name ); DescribeSecurityGroupsResult result = client.describeSecurityGroups( request ); if( result.getSecurityGroups().size() != 1 ) { return null; } Collection<IpRule> ipRules = new ArrayList<IpRule>(); List<IpPermission> permissions; if( inbound ) { permissions = result.getSecurityGroups().get( 0 ).getIpPermissions(); } else { permissions = result.getSecurityGroups().get( 0 ).getIpPermissionsEgress(); } for( IpPermission permission : permissions ) { ipRules.add( toIpRule( permission ) ); } return ipRules; }
private DescribeSecurityGroupsResult getSecurityGroupsBy(String filterName, Set<String> filterValues, AmazonEC2 ec2) { DescribeSecurityGroupsRequest group_req = new DescribeSecurityGroupsRequest(); group_req.withFilters(new Filter(filterName).withValues(filterValues)); return ec2.describeSecurityGroups(group_req); }
ec2.describeSecurityGroups(new DescribeSecurityGroupsRequest().withGroupIds(securityGroup));