|
||||||||||||||||||||||
|
ホーム > Google App Engine のユーザー認証 > web.xml による認証の設定、管理者の指定 web.xml による認証の設定、管理者の指定コード内で com.google.appengine.api.users.User オブジェクトを取得してみて、それが null 以外なら認証済み、null だったら認証されいない と判断する方法を Google Account による認証の説明ページで紹介しました。 この他、認証ユーザのみがアクセスできるページを web.xml (デプロイメント・ディスクリプタ) にて指定することが可能です。 ここでは web.xml での設定方法を説明します。 デプロイメント・ディスクリプタによる認証の設定web.xml は war/WEB-INF にあります。この設定ファイルをデプロイメント・ディスクリプタといいます。 デプロイメント・ディスクリプタに、security-constraint 要素を記述することによって、認証が必要なページを指定することができます。 認証済みユーザー全員がアクセス可能例えば、/auth ディレクトリ以下のページへのアクセスについて、認証さえしていれば誰でもアクセス可能である場合、次のように記載します。
<security-constraint>
<web-resource-collection>
<url-pattern>/auth/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>*</role-name>
</auth-constraint>
</security-constraint>
url-pattern 要素で認証を必要とする URL のパターンを指定して、role-name 要素にて誰がアクセス可能であるか設定します。 * は「認証済みユーザなら誰でも可」ということを示しています。 管理者ユーザーのみアクセス可能認証済みユーザーなら誰でも、という設定に対して 「管理者ユーザーのみアクセス可」という設定も可能です。 システムの管理画面など、そのアプリケーションの特定のページにアクセスできるユーザーを限定したい場合にこの機能は大変便利です。 その場合、role-name 要素にて admin という値を設定します。
<security-constraint>
<web-resource-collection>
<url-pattern>/auth/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>admin</role-name>
</auth-constraint>
</security-constraint>
管理者ユーザは Google App Engine の管理画面で設定では、そもそも「管理者ユーザー」とは誰のことでしょうか? 実は「管理者」というのは Google App Engine に設定画面があり、そこに登録されたユーザーのことです。 管理画面の Administration カテゴリの Permissions というところで管理者ユーザーを登録できます。
ホーム > Google App Engine のユーザー認証 > web.xml による認証の設定、管理者の指定 |
|
||||||||||||||||||||
|
© 2010-2011 Google App Engine 入門 |
||||||||||||||||||||||