この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
こんにちは、菊池です。
本日ご紹介のアップデートはこちらです。
AWS Security Token Service(STS)が、VPCエンドポイント(Interface Endpoint)に対応するリージョンが追加されました。これまでも、オレゴンリージョン(us-west-2)ではサポートされていましたが、追加で以下のリージョンで利用可能になっています。
- バージニア(us-east-1)
- オハイオ(us-east-2)
- アイルランド(eu-west-1)
- 東京(ap-northeast-1)
やってみた
早速、東京リージョンで試してみました。
前提
前提として、対象のリージョンでAWS STSがアクティブ化されている必要があります。
有効/無効はIAMマネジメントコンソールの[アカウント設定]から確認できます。有効化が必要な場合は、権限のあるアカウントで変更しましょう。
エンドポイントの作成
それではエンドポイントの作成です。コンソールから、エンドポイントの作成に進みます。
com.amazonaws.ap-northeast-1.stsを選択します。他は従来のエンドポイントと同く、作成するVPC/サブネット、SecurityGroupを設定します。
作成できました。ここのDNS名にアクセスすることで、STSのエンドポイントにアクセスできます。
エンドポイント経由のアクセス
実際にアクセスを試します。プライベートサブネット(インターネットにアクセスできないサブネット)のEC2から、STSにアクセスしてみます。
まずは、名前解決の結果です。プライベートIPが返ってきています。
$ dig sts.ap-northeast-1.amazonaws.com
; <<>> DiG 9.9.4-RedHat-9.9.4-73.amzn2.1.2 <<>> sts.ap-northeast-1.amazonaws.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56972
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;sts.ap-northeast-1.amazonaws.com. IN A
;; ANSWER SECTION:
sts.ap-northeast-1.amazonaws.com. 60 IN A 172.31.46.3
sts.ap-northeast-1.amazonaws.com. 60 IN A 172.31.2.169
sts.ap-northeast-1.amazonaws.com. 60 IN A 172.31.16.194
;; Query time: 2 msec
;; SERVER: 172.31.0.2#53(172.31.0.2)
;; WHEN: 木 6月 27 00:57:52 UTC 2019
;; MSG SIZE rcvd: 109
AWS CLIでアクセスしてみます。ここで注意ですが、AWS CLIのコマンドデフォルトだと、グローバルのエンドポイントであるsts.amazonaws.com
にアクセスしてしまいます。リージョンのエンドポイントを利用したいので、--endpoint
でsts.ap-northeast-1.amazonaws.com
を明示的に指定しましょう。
$ aws sts get-caller-identity --region ap-northeast-1 --endpoint https://sts.ap-northeast-1.amazonaws.com
{
"Account": "xxxxxxxxxxxx",
"UserId": "xxxxxxxxxxxxxxxxx:i-xxxxxxxxxxxxxxxx",
"Arn": "arn:aws:sts::xxxxxxxxxxxx:assumed-role/test/i-xxxxxxxxxxxxxxxx"
}
アクセスできました。
さいごに
AWS STSが東京リージョンでもVPCエンドポイント経由で利用可能になりました。これまでインターネットアクセスで利用していた場合には、それで不都合なければ特筆することはないかと思いますが、大きいのはエンドポイントのポリシー制御が可能になる点ではないでしょうか。