セキュリティグループのデータ構造は、配列の下に配列がある状態なので、ヘッダと明細に分けて説明します。
1,IAM
---------------------------------------
AWSサービス:Amazon EC2
アクション :DescribeSecurityGroups
Amazonリソースネーム(ARN):*
---------------------------------------
2,プログラム仕様
●入力パラメータ
・IAMユーザの”アクセスキーID”と”・シークレットアクセスキー”
●処理内容
セキュリティグループの一覧を画面表示する
●エラー処理
特になし
3,画面構成
4,プログラム
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 | Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim _AWSID As String = TextBox1.Text
Dim _AWSPass As String = TextBox2.Text
'EC2クライアント作成
Dim cred As Amazon.Runtime.BasicAWSCredentials
cred = New Amazon.Runtime.BasicAWSCredentials(_AWSID, _AWSPass)
Dim ec2client As Amazon.EC2.AmazonEC2Client
ec2client = New Amazon.EC2.AmazonEC2Client(cred, Amazon.RegionEndpoint.APNortheast1)
'リクエストオブジェクトを定義
Dim reQ = New Amazon.EC2.Model.DescribeSecurityGroupsRequest
'特定のIDのみを調べたい場合はここでパラメータ設定する
'reQ.GroupIds.Add(セキュリティグループID)
'レスポンスオブジェクトを定義して、実行。
Dim Res As Amazon.EC2.Model.DescribeSecurityGroupsResponse
Res = ec2client.DescribeSecurityGroups(reQ)
'表示用のデータテーブルを作成する。
Dim Dt As New Data.DataTable
'ヘッダー部
Dt.Columns.Add("GroupID")
Dt.Columns.Add("GroupName")
Dt.Columns.Add("GroupDescription")
Dt.Columns.Add("VpcId")
For Each wSG As Amazon.EC2.Model.SecurityGroup In Res.SecurityGroups
Dim Dr As DataRow = Dt.NewRow
Dr("GroupID") = wSG.GroupId
Dr("GroupName") = wSG.GroupName
Dr("GroupDescription") = wSG.Description
Dr("VpcId") = wSG.VpcId
Dt.Rows.Add(Dr)
Next
'画面表示する。
DataGridView1.DataSource = Dt
End Sub
|
5,解説EC2管理コンソールの”セキュリティグループ”の画面上半分に表示される項目 グループID/グループ名/VPC ID/説明 が取得できます。
データ取得後の状態は↓こんな感じです。 Res->SecurityGroups が配列になっています。 SecurityGroups(2)を展開すると、グループID等があり、さらにその下にIpPermissonsが配列になっています。
|
|