Shoeisha Technology Media

CodeZine(コードジン)

記事種別から探す

Windows AzureでASP.NETのメンバーシップ機能を使用する

正式リリースされたWindows Azureの力(6)

  • LINEで送る
  • このエントリーをはてなブックマークに追加

 前回は、 PHPによるWindows Azureアプリケーション開発について解説しました。シリーズ最終回となる今回は、Windows AzureでASP.NETのメンバーシップ機能を使用する方法について解説します。サンプルとして、Windows Azure上で動作するユーザー認証の機能を持ったWebアプリケーションを作成してみましょう。

目次

はじめに

 前回は、PHPによるWindows Azureアプリケーション開発について解説しました。シリーズ最終回となる今回は、Windows AzureでASP.NETのメンバーシップ機能を使用する方法について解説します。サンプルとして、Windows Azure上で動作するユーザー認証の機能を持ったWebアプリケーションを作成してみましょう。

対象読者

  • クラウド技術に興味がある方
  • Windows Azureに興味がある方
  • Windows Azureアプリケーション開発に興味がある方

Windows AzureでのASP.NETメンバーシップ機能の使用方法

 ASP.NETでユーザー認証やロール管理などを必要とするWebアプリケーションを作成する場合、ASP.NETのメンバーシップ機能やログインコントロールを使用することで効率よく開発することができます。

 通常のASP.NETでメンバーシップ機能を使用する場合、既定ではローカル環境のSQL Server Expressにデータを格納します。しかし、ローカルの開発環境は別として、クラウド上のWindows AzureではSQL Server Expressを使用できませんので、ASP.NETのメンバーシップ機能やログインコントロールを使用したい場合、どこか別の場所にデータを格納する必要があります。

 このために使用できるのが、AspProvidersプロジェクトのライブラリです。AspProvidersプロジェクトとは、C#で書かれたマネージライブラリで、データの格納先としてWindows Azureストレージを使用するメンバーシップ関連のカスタムプロバイダーとして実装されています。

 AspProvidersプロジェクトに含まれる主なクラスを、表1にまとめてみます。

表1 AspProvidersプロジェクトの主なクラス
クラス 説明
BlobProvider ブロブ操作のためのクラス
Configuration ストレージアカウントなどの各種設定用クラス
SecUtility セキュリティ関連ユーティリティクラス
TableStorageMembershipProvider MembershipProviderから派生したWindows Azureストレージ用カスタムメンバーシッププロバイダー
TableStorageProfileProvider ProfileProviderから派生したWindows Azureストレージ用カスタムプロファイルプロバイダー
TableStorageRoleProvider RoleProviderから派生したWindows Azureストレージ用カスタムロールプロバイダー
TableStorageSessionStateProvider SessionStateStoreProviderBaseから派生したWindows Azureストレージ用セッション状態ストアプロバイダー

 注意点として、本稿執筆時点では、AspProvidersプロジェクトはあくまでサンプルという位置づけになっています。Windows Azure SDKの正式なWindows Azureマネージライブラリに含められているわけではありません。同じく以前はサンプル扱いだったストレージ操作のためのStorageClientプロジェクトが、変更が加えられた形で、正式にWindows AzureマネージライブラリのMicrosoft.WindowsAzure.StorageClient名前空間として含められたように、将来的にはAspProvidersプロジェクトも正式なライブラリに含められるかもしれません。いずれにしても、現時点でのAspProvidersプロジェクトを実際の業務などで使用する場合には、くれぐれも注意してください。

SQL Azureでのメンバーシップ機能の使用

 Windows AzureでASP.NETのメンバーシップ機能を使用する別の方法として、SQL Azureをデータストアとして使用する方法もあります。

 SQL Serverでメンバーシップ機能のためのデータベースを作成する「ASP.NET SQL Server登録ツール(Aspnet_regsql.exe)」を、SQL Azureで実行するとエラーが生じます。そのため、SQL Azure専用のSQLスクリプトが別途用意されています。

 詳細や具体的な手順については、マイクロソフトサポートオンラインの「Updated ASP.net scripts for use with Microsoft SQL Azure」(英文)を参照してください。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 山田 祥寛(ヤマダ ヨシヒロ)

    静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for ASP/ASP.NET。執筆コミュニティ「WINGSプロジェクト」代表。 主な著書に「入門シリーズ(サーバサイドAjax/XMLD...

  • WINGSプロジェクト 広瀬 嘉久(株式会社ジェイテックジャパン)(ヒロセ ヨシヒサ )

    <WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2017年5月時点での登録メンバは52名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂き...

バックナンバー

連載:正式リリースされたWindows Azureの力
All contents copyright © 2005-2017 Shoeisha Co., Ltd. All rights reserved. ver.1.5