Go言語学習22日目:AWS SDK for Go v2 を触る前の準備編!認証とDynamoDBのテーブル作成までやってみた。

Go言語学習22日目

今週からはいよいよ 「Go × クラウド」=AWS連携 に入っていきます!

先週まではAPIサーバーの勉強をしてました。

kunio-ud-all.com

まずはその準備として、

  • AWS SDK for Go v2 の概要を理解
  • 認証情報(アクセスキーなど)の設定
  • DynamoDB テーブルを AWS コンソールで作成

までの環境づくりを進めていきました!


Step 1:AWS SDK for Go v2 とは?

✅ 概要まとめ
  • AWS公式のGo用ライブラリ(v1 → v2で設計が大幅改善)
  • S3やDynamoDBなど、各AWSサービスをGoで操作できるようにする
  • 外部APIというより、SDK=開発者用ツールキットに近い
  • モジュール構成が細かく分かれており、必要なサービスだけ使える

たとえば、DynamoDBだけ使いたいならこのように指定できます👇

go get github.com/aws/aws-sdk-go-v2/config
go get github.com/aws/aws-sdk-go-v2/service/dynamodb

Step 2:認証情報の設定(必須)

AWS SDK は、リクエストの際に 認証情報(アクセスキーとシークレットキー) を使って認証します。

今回は ~/.aws/credentials を使う方法
  1. AWSマネジメントコンソールで IAM ユーザーを作成(権限はAmazonDynamoDBFullAccessなど)
  2. アクセスキーとシークレットキーをメモ
  3. 以下のファイルを作成:
~/.aws/credentials
[default]
aws_access_key_id = AKIA***************
aws_secret_access_key = abcdefg***************
  1. 必要に応じて、以下も設定:
~/.aws/config
[default]
region = ap-northeast-1

Step 3:DynamoDBのテーブルを作っておく(AWSコンソール)

Goコードを書く前に、最低限のテーブルを1つ作っておくのがおすすめです!

作成手順(AWSマネジメントコンソール):
  1. DynamoDB → 「テーブルの作成」
  2. テーブル名:Go-Practice-Users
  3. パーティションキー(主キー):UserID(文字列型)
  4. そのほかはデフォルトでOK(オンデマンド課金で問題なし)

これで、Go から以下のようになるかな?


今日のまとめ

✅ Go言語 × AWS SDK 準備チェックリスト
  • [x] SDK v2 の導入方法と構造を理解した
  • [x] ~/.aws/credentials に認証情報を保存
  • [x] ~/.aws/config にリージョンを設定(ap-northeast-1など)
  • [x] DynamoDBに最低限のテーブル(Go-Practice-Users)を作成

以上となります。引き続きよろしくお願いいたします。