«前の日記(2011-08-04 (Thu)) 最新 次の日記(2011-08-10 (Wed))» 編集

雑記帳


2011-08-09 (Tue) [長年日記]

[AWS] AWSで使われるセキュリティ証明書

AWSを触り始めて最初に混乱したのは、AWSにアクセスするために必要な情報が多岐にわたること。

アカウントを作ると、アカウント番号が発行されて、アクセスキーIDとシークレットアクセスキーを生成し、X.509証明書をダウンロードし、キーペアを取得し…と、セキュリティに関係する情報が沢山で、どれをいつ使うのかなどが、最初は分からなかった。

ということで、一旦整理するために調べてみた。AWSのドキュメントに、About AWS Security Credentialsというのがあったので、読み解いてみた。

自分の理解では、次のような感じらしい。

  • キーペア(Key Pair)は、起動するEC2インスタンスに自動的に設定される公開鍵のこと。起動したEC2インスタンスに、いきなり公開鍵認証でサーバにログインできるのには驚いたけど、キーペアはそのためのもの。
  • アクセスキーは、RESTまたはQuery APIを実行する際につかう。対象鍵暗号(共通鍵暗号)方式で、シークレットアクセスキーがその鍵となる。リクエストを共通鍵で暗号化して送る。URIを署名するのにも使われる。90日ごとに変更することが推奨されている。
  • X.509証明書は、一般的には主にSSLやSSHで使われているもので、AWSではSOAP APIの呼び出しに使う。公開鍵暗号方式。キーペアと同じ方式のものなので、なぜ二種類あるのかと思ったのだが、単に用途が違った。

要するに、アクセスするやりかたによって、使用する暗号化方式(セキュリティ証明書)が変わってくる、ということらしい。

あと、セキュリティ証明書とは違うが、APIの呼び出し時にアカウント番号(口座番号)が必要になるケースがある。これは各種リソース(EBS、AMIなど)の共有に使用される。Public AMIなどを検索するときに、そのAMIの所有者を示すアカウント番号を使うことができる。

まだ理解が完全ではないので、今後ももう少し調べてみたい。