Arbeiten mit Sicherheitsgruppen in Amazon EC2 - AWS SDK for Java 2.x

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Arbeiten mit Sicherheitsgruppen in Amazon EC2

Eine Sicherheitsgruppe erstellen

Um eine Sicherheitsgruppe zu erstellen, rufen Sie die -Methode des Ec2Client mit einem aufCreateSecurityGroupRequest, der den Namen des Schlüssels enthält. createSecurityGroup

Importe

import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.ec2.Ec2Client; import software.amazon.awssdk.services.ec2.model.CreateSecurityGroupRequest; import software.amazon.awssdk.services.ec2.model.AuthorizeSecurityGroupIngressRequest; import software.amazon.awssdk.services.ec2.model.AuthorizeSecurityGroupIngressResponse; import software.amazon.awssdk.services.ec2.model.Ec2Exception; import software.amazon.awssdk.services.ec2.model.IpPermission; import software.amazon.awssdk.services.ec2.model.CreateSecurityGroupResponse; import software.amazon.awssdk.services.ec2.model.IpRange;

Code

CreateSecurityGroupRequest createRequest = CreateSecurityGroupRequest.builder() .groupName(groupName) .description(groupDesc) .vpcId(vpcId) .build(); CreateSecurityGroupResponse resp= ec2.createSecurityGroup(createRequest);

Sehen Sie sich das vollständige Beispiel auf an GitHub.

Konfigurieren einer Sicherheitsgruppe

Eine Sicherheitsgruppe kann sowohl eingehenden (eingehenden) als auch ausgehenden (ausgehenden) Datenverkehr zu Ihren Amazon EC2 Instances steuern.

Um Ihrer Sicherheitsgruppe Regeln für eingehenden Datenverkehr hinzuzufügen, verwenden Sie die -Methode des Ec2Client und geben Sie den Namen der Sicherheitsgruppe und die Zugriffsregeln (IpPermission) an, die Sie ihr innerhalb eines AuthorizeSecurityGroupIngressRequest Objekts zuweisen möchten. authorizeSecurityGroupIngress Im folgenden Beispiel wird gezeigt, wie Sie einer Sicherheitsgruppe IP-Berechtigungen hinzufügen.

Importe

import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.ec2.Ec2Client; import software.amazon.awssdk.services.ec2.model.CreateSecurityGroupRequest; import software.amazon.awssdk.services.ec2.model.AuthorizeSecurityGroupIngressRequest; import software.amazon.awssdk.services.ec2.model.AuthorizeSecurityGroupIngressResponse; import software.amazon.awssdk.services.ec2.model.Ec2Exception; import software.amazon.awssdk.services.ec2.model.IpPermission; import software.amazon.awssdk.services.ec2.model.CreateSecurityGroupResponse; import software.amazon.awssdk.services.ec2.model.IpRange;

Code

Erstellen Sie zunächst einen Ec2Client

Region region = Region.US_WEST_2; Ec2Client ec2 = Ec2Client.builder() .region(region) .build();

Verwenden Sie dann die -authorizeSecurityGroupIngressMethode von Ec2Client,

IpRange ipRange = IpRange.builder() .cidrIp("0.0.0.0/0").build(); IpPermission ipPerm = IpPermission.builder() .ipProtocol("tcp") .toPort(80) .fromPort(80) .ipRanges(ipRange) .build(); IpPermission ipPerm2 = IpPermission.builder() .ipProtocol("tcp") .toPort(22) .fromPort(22) .ipRanges(ipRange) .build(); AuthorizeSecurityGroupIngressRequest authRequest = AuthorizeSecurityGroupIngressRequest.builder() .groupName(groupName) .ipPermissions(ipPerm, ipPerm2) .build(); AuthorizeSecurityGroupIngressResponse authResponse = ec2.authorizeSecurityGroupIngress(authRequest); System.out.printf( "Successfully added ingress policy to Security Group %s", groupName); return resp.groupId(); } catch (Ec2Exception e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } return ""; }

Um der Sicherheitsgruppe eine Ausgangsregel hinzuzufügen, geben Sie ähnliche Daten in einem AuthorizeSecurityGroupEgressRequest wie in der authorizeSecurityGroupEgress Methode des Ec2Client an.

Sehen Sie sich das vollständige Beispiel auf an GitHub.

Beschreiben von Sicherheitsgruppen

Um Ihre Sicherheitsgruppen zu beschreiben oder Informationen darüber zu erhalten, rufen Sie die Methode des Ec2Client aufdescribeSecurityGroups. Es gibt einen zurückDescribeSecurityGroupsResponse, mit dem Sie auf die Liste der Sicherheitsgruppen zugreifen können, indem Sie die Methode aufrufensecurityGroups, die eine Liste von SecurityGroup Objekten zurückgibt.

Importe

import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.ec2.Ec2Client; import software.amazon.awssdk.services.ec2.model.DescribeSecurityGroupsRequest; import software.amazon.awssdk.services.ec2.model.DescribeSecurityGroupsResponse; import software.amazon.awssdk.services.ec2.model.SecurityGroup; import software.amazon.awssdk.services.ec2.model.Ec2Exception;

Code

public static void describeEC2SecurityGroups(Ec2Client ec2, String groupId) { try { DescribeSecurityGroupsRequest request = DescribeSecurityGroupsRequest.builder() .groupIds(groupId).build(); DescribeSecurityGroupsResponse response = ec2.describeSecurityGroups(request); for(SecurityGroup group : response.securityGroups()) { System.out.printf( "Found Security Group with id %s, " + "vpc id %s " + "and description %s", group.groupId(), group.vpcId(), group.description()); } } catch (Ec2Exception e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }

Sehen Sie sich das vollständige Beispiel auf an GitHub.

Löschen einer Sicherheitsgruppe

Um eine Sicherheitsgruppe zu löschen, rufen Sie die -Methode des Ec2Client auf und übergeben Sie ihr eine DeleteSecurityGroupRequest, die die ID der zu löschenden Sicherheitsgruppe enthält. deleteSecurityGroup

Importe

import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.ec2.Ec2Client; import software.amazon.awssdk.services.ec2.model.DeleteSecurityGroupRequest; import software.amazon.awssdk.services.ec2.model.Ec2Exception;

Code

public static void deleteEC2SecGroup(Ec2Client ec2,String groupId) { try { DeleteSecurityGroupRequest request = DeleteSecurityGroupRequest.builder() .groupId(groupId) .build(); ec2.deleteSecurityGroup(request); System.out.printf( "Successfully deleted Security Group with id %s", groupId); } catch (Ec2Exception e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }

Sehen Sie sich das vollständige Beispiel auf an GitHub.

Weitere Informationen