

 AWS SDK untuk JavaScript V2 telah mencapai end-of-support. Kami menyarankan Anda bermigrasi ke [AWS SDK untuk JavaScript v3](https://docs.aws.amazon.com//sdk-for-javascript/v3/developer-guide/). Untuk detail dan informasi tambahan tentang cara bermigrasi, silakan lihat [pengumuman](https://aws.amazon.com/blogs//developer/announcing-end-of-support-for-aws-sdk-for-javascript-v2/) ini.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Bekerja dengan Grup Keamanan di Amazon EC2
<a name="ec2-example-security-groups"></a>

![JavaScript code example that applies to Node.js execution](http://docs.aws.amazon.com/id_id/sdk-for-javascript/v2/developer-guide/images/nodeicon.png)

**Contoh kode Node.js ini menunjukkan:**
+ Cara mengambil informasi tentang grup keamanan Anda.
+ Cara membuat grup keamanan untuk mengakses EC2 instans Amazon.
+ Cara menghapus grup keamanan yang ada.

## Skenario
<a name="ec2-example-security-groups-scenario"></a>

Grup EC2 keamanan Amazon bertindak sebagai firewall virtual yang mengontrol lalu lintas untuk satu atau lebih contoh. Anda menambahkan aturan ke setiap grup keamanan untuk mengizinkan lalu lintas ke atau dari instans terkait. Anda dapat mengubah aturan untuk grup keamanan kapan saja; aturan baru diterapkan secara otomatis ke semua instance yang terkait dengan grup keamanan.

Dalam contoh ini, Anda menggunakan serangkaian modul Node.js untuk melakukan beberapa EC2 operasi Amazon yang melibatkan grup keamanan. Modul Node.js menggunakan SDK for JavaScript untuk mengelola instance dengan menggunakan metode berikut dari kelas EC2 klien Amazon:
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/EC2.html#describeSecurityGroups-property](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/EC2.html#describeSecurityGroups-property)
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/EC2.html#authorizeSecurityGroupIngress-property](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/EC2.html#authorizeSecurityGroupIngress-property)
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/EC2.html#createSecurityGroup-property](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/EC2.html#createSecurityGroup-property)
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/EC2.html#describeVpcs-property](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/EC2.html#describeVpcs-property)
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/EC2.html#deleteSecurityGroup-property](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/EC2.html#deleteSecurityGroup-property)

Untuk informasi selengkapnya tentang grup EC2 keamanan [Amazon, lihat Grup Keamanan EC2 Amazon Amazon untuk Instans Linux](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html) di *Panduan EC2 Pengguna Amazon* atau [Grup EC2 Keamanan Amazon untuk Instans Windows](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/using-network-security.html) di Panduan * EC2 Pengguna Amazon*.

## Tugas Prasyarat
<a name="ec2-example-security-groups-prerequisites"></a>

Untuk mengatur dan menjalankan contoh ini, pertama-tama selesaikan tugas-tugas ini:
+ Instal Node.js. Untuk informasi selengkapnya tentang menginstal Node.js, lihat [situs web Node.js](https://nodejs.org).
+ Buat file konfigurasi bersama dengan kredensi pengguna Anda. Untuk informasi selengkapnya tentang menyediakan file kredensial bersama, lihat. [Memuat Kredensial di Node.js dari File Kredensial Bersama](loading-node-credentials-shared.md)

## Menggambarkan Grup Keamanan Anda
<a name="ec2-example-security-groups-describing"></a>

Buat modul Node.js dengan nama file`ec2_describesecuritygroups.js`. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya. Untuk mengakses Amazon EC2, buat objek `AWS.EC2` layanan. Buat objek JSON untuk diteruskan sebagai parameter, termasuk grup IDs untuk grup keamanan yang ingin Anda jelaskan. Kemudian panggil `describeSecurityGroups` metode objek EC2 layanan Amazon.

```
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });

// Create EC2 service object
var ec2 = new AWS.EC2({ apiVersion: "2016-11-15" });

var params = {
  GroupIds: ["SECURITY_GROUP_ID"],
};

// Retrieve security group descriptions
ec2.describeSecurityGroups(params, function (err, data) {
  if (err) {
    console.log("Error", err);
  } else {
    console.log("Success", JSON.stringify(data.SecurityGroups));
  }
});
```

Untuk menjalankan contoh, ketik berikut ini di baris perintah.

```
node ec2_describesecuritygroups.js
```

Kode contoh ini dapat ditemukan [di sini GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascript/example_code/ec2/ec2_describesecuritygroups.js).

## Membuat Grup Keamanan dan Aturan
<a name="ec2-example-security-groups-creating"></a>

Buat modul Node.js dengan nama file`ec2_createsecuritygroup.js`. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya. Untuk mengakses Amazon EC2, buat objek `AWS.EC2` layanan. Buat objek JSON untuk parameter yang menentukan nama grup keamanan, deskripsi, dan ID untuk VPC. Lewati parameter ke `createSecurityGroup` metode.

Setelah berhasil membuat grup keamanan, Anda dapat menentukan aturan untuk mengizinkan lalu lintas masuk. Buat objek JSON untuk parameter yang menentukan protokol IP dan port masuk tempat EC2 instance Amazon akan menerima lalu lintas. Lewati parameter ke `authorizeSecurityGroupIngress` metode.

```
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Load credentials and set region from JSON file
AWS.config.update({ region: "REGION" });

// Create EC2 service object
var ec2 = new AWS.EC2({ apiVersion: "2016-11-15" });

// Variable to hold a ID of a VPC
var vpc = null;

// Retrieve the ID of a VPC
ec2.describeVpcs(function (err, data) {
  if (err) {
    console.log("Cannot retrieve a VPC", err);
  } else {
    vpc = data.Vpcs[0].VpcId;
    var paramsSecurityGroup = {
      Description: "DESCRIPTION",
      GroupName: "SECURITY_GROUP_NAME",
      VpcId: vpc,
    };
    // Create the instance
    ec2.createSecurityGroup(paramsSecurityGroup, function (err, data) {
      if (err) {
        console.log("Error", err);
      } else {
        var SecurityGroupId = data.GroupId;
        console.log("Success", SecurityGroupId);
        var paramsIngress = {
          GroupId: "SECURITY_GROUP_ID",
          IpPermissions: [
            {
              IpProtocol: "tcp",
              FromPort: 80,
              ToPort: 80,
              IpRanges: [{ CidrIp: "0.0.0.0/0" }],
            },
            {
              IpProtocol: "tcp",
              FromPort: 22,
              ToPort: 22,
              IpRanges: [{ CidrIp: "0.0.0.0/0" }],
            },
          ],
        };
        ec2.authorizeSecurityGroupIngress(paramsIngress, function (err, data) {
          if (err) {
            console.log("Error", err);
          } else {
            console.log("Ingress Successfully Set", data);
          }
        });
      }
    });
  }
});
```

Untuk menjalankan contoh, ketik berikut ini di baris perintah.

```
node ec2_createsecuritygroup.js
```

Kode contoh ini dapat ditemukan [di sini GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascript/example_code/ec2/ec2_createsecuritygroup.js).

## Menghapus Grup Keamanan
<a name="ec2-example-security-groups-deleting"></a>

Buat modul Node.js dengan nama file`ec2_deletesecuritygroup.js`. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya. Untuk mengakses Amazon EC2, buat objek `AWS.EC2` layanan. Buat parameter JSON untuk menentukan nama grup keamanan yang akan dihapus. Kemudian panggil `deleteSecurityGroup` metodenya.

```
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });

// Create EC2 service object
var ec2 = new AWS.EC2({ apiVersion: "2016-11-15" });

var params = {
  GroupId: "SECURITY_GROUP_ID",
};

// Delete the security group
ec2.deleteSecurityGroup(params, function (err, data) {
  if (err) {
    console.log("Error", err);
  } else {
    console.log("Security Group Deleted");
  }
});
```

Untuk menjalankan contoh, ketik berikut ini di baris perintah.

```
node ec2_deletesecuritygroup.js
```

Kode contoh ini dapat ditemukan [di sini GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascript/example_code/ec2/ec2_deletesecuritygroup.js).