Azure Mobile Apps の認証設定について(その1)
初めまして、Azure Mobile Apps デベロッパー サポートです。 開発者向けにブログを開設しました。ここで開発者にいろいろな情報をご提供できればと思います!今後ともよろしくお願いします。
では、早速1回目の投稿です。 モバイル アプリでは、ユーザーが利用する前に認証 (ログイン) を求める機能を有しているものが多いと思います。Azure Mobile Apps では、その認証プロバイダーとして、Azure Active Directory, Facebook, Google, Twitter, Microsoft アカウントおよびカスタム認証が利用できます。 この認証機能を構成する際、以下の画像で赤く囲った 2 つの設定がありますが、これらがどのように機能するのかを説明します。今回は、1つ目の [要求が認証されない場合に実行するアクション] について解説します。
[ 要求が認証されない場合に実行するアクション] について
いまいち、わかりにくい日本語ですが、原文は [Action to take when request is not authenticated] です。 これは、バックエンド サーバー アプリケーションが提供する API などに対し、クライアント アプリがリクエスト(POST や GET など)を発行した時、もし認証されていないクライアントからの要求であった場合、バックエンド側の挙動としてどのように振る舞うか、を決める設定となります。 認証が必要な API の場合、C# の .NET バックエンドでは、以下のように [Authorize] という属性をクラスやメソッドに付加しています。 ここで、 [Authorize] 属性を付加していないものについては、認証なしで呼び出し可能とする場合には [要求が認証されない場合に実行するアクション] を "要求の許可(操作不要)" に設定します。 一方で、 [Authorize] 属性を付加していないものについても、何かしらの認証を要求する場合は、"要求の許可(操作不要)" 以外の認証プロバイダーを選択するようにします。そうすることで、認証されていないすべての要求は、指定した認証プロバイダーへリダイレクトされるようになります。
クライアント アプリがプッシュ通知などに関連した機能で、認証をせず処理することが求められるような場合については、この設定を "要求の許可(操作不要)" とする必要があります。もし、こういったケースでアプリがうまく動作しないといった場合は、この設定を見直してみると良いかもしれません。
次回は、[トークン ストア] について、解説します。
< 関連情報>
Azure Active Directory ログインを使用するように App Service アプリケーションを構成する方法