AWS SDK for .NET
AWS SDK for .NET
いろいろ試してみる
環境と前提条件
利用OS : Microsoft Windows 8.1 64-Bit
Microsoft .NET Framework : 4.5
AWS : AWS CLI, AWSSDKインストール済み
IAMユーザ : 作成済み
Windows accunt hoge : C:\Users\hoge
AWS CLI path : C:\DEV\AWS\AWSCLI
AWS SDK path : C:\DEV\AWSSDK\DOTNET
AWS CREDENTIALS PATH : C:\Users\hoge/.aws/credentials
C# プロジェクトディレクトリ: C:\DEV\AWSSDK\project
file:C:\DEV\ENV\awsenv.bat
@echo off
set PATH=%PATH%;C:\DEV\AWS\AWSCLI
1. はじめに
作成する設定ファイル名 : C:\DEV\AWSSDK\project\App.config
作成するコードファイル名 : ex01.cs
以下の内容を記述します。
このファイルをコードファイルで指定することで
認証情報をハードコードすることなく運用可能となっています。
file:App.config
<configuration>
<configuSections>
<section name="aws" type="Amazon.AWSSection, AWSSDK" />
</configSections>
<aws profileName="default" profileLocation="C:\Users\hoge\.aws\credentials" />
</configuration>
file:ex01.cs
using System;
// for AWSCredentials
using Amazon.Runtime;
// for IAmazonEC2
using Amazon.EC2;
using Amazon.EC2.Model;
namespace hogehoge {
class Program
{
static void Main(string[] args)
{
AWSCredentials credentials =
new StoredProfileAWSCredentials("default");
IAmazonEC2 ec2 = AWSClientFactory.CreateAmazonEC2Client(
credentials, RegionEndpoint.APNortheast1);
DescribeInstancesRequest req =
new DescribeInstancesRequest();
try {
DescribeInstancesResponse ec2res =
ec2.DescribeInstances(req);
int numInstances = 0;
numInstances = ec2res.Reservations.Count;
Console.WriteLine(
"EC2インスタンスの数 : " + numInstances );
}
catch (AmazonEC2Exception ex)
{
// 例外処理 省略...
}
}
}
}
コードのコンパイル方法
AWSSDK.DLLを利用します。カレントディレクトリにコピー済み
C:\DEV\AWSSDK\project>csc ex01.cs /reference:AWSSDK.dll
実行例
C:\DEV\AWSSDK\project>ex01.exe
EC2インスタンスの数 : 0