検索
連載

日本国内のOpenStack事例が続々/統合認証「Keystone」とはたまおきのOpenStackウォッチ(2014年3月版)(2/2 ページ)

2014年2月に開催されたOpenStack Days Tokyo 2014。生々しい大規模採用の事例が聞けた他、NECのパブリッククラウドサービスの話も。OpenStackコンポーネント解説は「Keystone」を取り上げます。

Share
Tweet
LINE
Hatena
前のページへ |       

OpenStackコンポーネント解説(7):統合認証「Keystone」

 「Keystone」は、各種サービスに対する認証(Authentication)、認可(Authorization)を提供するコンポーネントです。OpenStackはそのアーキテクチャ上、複数コンポーネントをRESTやAMQPで接続するようになっています、この中で、認証はKeystoneが一括して行う仕組みです。

 OpenStack上でさまざまな処理を行いたい場合には、ユーザーはまずKeystoneで認証を行います。手続きはユーザー名、パスワードによる、一般的な認証をイメージすれば良いでしょう。認証に成功すると、Keystoneからトークンとエンドポイントが与えられます。そのトークンを使って、その他のコンポーネントに対してリクエストを送ります。

 リクエストの送り先がエンドポイントです。エンドポイントはREST APIとして、URLで渡されます。このようにAPIの送り先をその都度渡してくれるので、Keystoneはサービスカタログ的な機能も持っていると考えてよいでしょう。

 例えば、Novaに対してインスタンスの起動をリクエストするとします。NovaのAPIエンドポイントに対してトークンと一緒にリクエストをHTTPで送信します。Novaは渡されたトークンを元にKeystoneに問い合わせを行い、そのリクエストがユーザーに対して許可されている処理かどうかを確認します。これが認可です。

 Keystoneでは、認証認可のための情報として、ユーザー、グループ、テナント(以前はプロジェクトと呼ばれていた)、ロールなどで管理されています。ユーザーが行えることを定義するのがロールで、主なロールとしては管理者としてふるまえるadminロール、一般ユーザーのMemberロールなどがあらかじめ定義されています。認可する権限をカスタマイズしたい場合には、JSONファイルを修正する必要があります。この方式は柔軟にカスタマイズできますが、作業を行う管理者としてはやや大変かもしれません。

 Keystoneはその名の通り「要石」として、OpenStack全体に関わる重要なコンポーネントです。規模が大きなクラウドを構築する場合には、冗長化を行うなどの耐障害性アップの対策が必要になるでしょう。


Copyright © ITmedia, Inc. All Rights Reserved.

前のページへ |       
ページトップに戻る