Oracle Database 2日で.NET開発者ガイド 11g リリース1(11.1) E05695-02 |
|
この章の内容は次のとおりです。
OracleをMicrosoft ASP.NETと直接統合する方法は多くあります。
このチュートリアルでは、Oracle Developer Toolsを使用したデータ駆動型Webアプリケーションの作成方法、Oracle Providers for ASP.NETを使用した単純な方法でのデータ駆動型Webアプリケーションへのセキュリティの追加など、いくつかの機能を示します。
まず、ツールを使用して、Oracle Databaseからデータ・グリッドに従業員データを取得するWebアプリケーションを作成します。次に、ログイン・コントロールを追加し、認可されたWebユーザーにのみこの従業員情報へのアクセスを許可することでアプリケーションを保護します。最後に、Oracle Providers for ASP.NETを使用して認可されたWebユーザーを作成します。これらのWebユーザーは、このアプリケーションでの認証用にOracle Database内に格納されます。
Oracle Developer ToolsでASP.NETアプリケーションを作成する前に、後続の項で説明する設定を実行する必要がある場合があります。
この項では、Oracle Databaseからデータを取得するASP.NET Webサイトの作成方法について説明します。WebサイトのASP.NET GridViewにデータが表示されるため、ユーザーは結果をページごとに確認できます。
この項の内容は次のとおりです。
グリッド付きのASP.NET Webサイトを作成するには、次の手順を実行します。
「Default.aspx」
タブで、画面の下部の「Design」アイコンをクリックします。<div>
要素に、Employees Listなどのタイトルを入力します。<div>
とラベル付けされた点線の矩形にドラッグします。このタスク・リストが表示されない場合は、グリッドを選択した後、右側の>記号をクリックします。
データソースを作成するには、次の手順を実行します。
「Data Source Configuration Wizard」が表示されます。
HR
と入力します。「OK」をクリックします。HR.ORCL
を選択します。「Next」をクリックします。EMPLOYEES
表を選択します。「Columns」リストで、アスタリスク(*
)の横のボックスを選択します。これらを選択すると、SELECT
*
FROM
EMPLOYEES
と入力した場合と同様に、OracleによってEMPLOYEES
表からすべての行が戻されます。
「Next」をクリックします。
次に示すようなブラウザ・ウィンドウが表示され、問合せでリクエストされたデータが示されます。ページの左下のセクションの番号を使用して、結果をページごとに確認できます。
この項では、Webサイト認証を追加して従業員データにアクセスできるユーザーを制限する方法について説明します。ASP.NETログイン・コントロールを使用し、Oracle Providers for ASP.NETで作成および格納したユーザーに対する検証によって認証を行います。
「Oracle Providers for ASP.NETの有効化および軽量Webユーザーの作成」では、作成したばかりのASP.NETアプリケーションを使用して、認可されたユーザーが情報にアクセスできるようにして従業員データを保護します。Oracle Providers for ASP.NETを使用してアプリケーションのWebユーザーを作成します。このWebユーザーは、ログイン・コントロールを使用してWebアプリケーションを起動し、証明が正しい場合に、従業員情報にアクセスできます。
login.aspx
を入力して、「Add」をクリックします。login.aspx
ページが表示されたら、「Design」タブに切り替えます。
<div>
とラベル付けされた点線の矩形にドラッグ・アンド・ドロップします。これが標準ASP.NETログイン・コントロールです。これによって、Oracle Databaseに格納されているユーザー・ログイン資格証明を取得して検証できます。
「DestinationPageUrl」
で、Default.aspx
を選択または入力します。ユーザーがログインに成功すると、従業員データが含まれるDefault.aspx
ページが表示されます。ログインに成功しなかった場合は、ログイン・ページにリダイレクトされます。
この項では、ASP.NET Webサイト管理ツールを使用して次の操作を行います。
WebサイトでOracle ASP.NETプロバイダを使用して新しいWebユーザーを作成するには、次の手順を実行します。
デフォルトでは、ASP.NETサイトでユーザーの識別にWindows認証が使用されます。サイト固有のログインおよびパスワードでユーザーを識別するWebサイトを作成します。したがって、ログインおよびパスワードの使用に対応するようにサイトを構成する必要があります。
「Create User」をクリックします。
注意: この画面には、他のユーザーの作成を続けるオプションや、別のタブに移動するオプションがあります。
注意: 現在、「Users」には既存ユーザーが1人表示されています。
デフォルトでは、Webサイトへの匿名アクセスが有効になっています。前述の設定で、匿名アクセスを無効にすることによってWebサイトを保護します。これで、認証されたユーザーのみが従業員データを表示できるようになります。
「Done」をクリックします。
このWebサイトに固有のWebユーザーが作成されたので、Webサイトでは、このユーザーによる従業員データへのアクセスが許可され、匿名ユーザーを含むその他のすべてのユーザーによるアクセスは拒否されるようになります。
この項では、匿名ユーザー、不正ユーザー、間違ったパスワードを使用する認可されたユーザー、正しいパスワードを使用する認可されたユーザーとして従業員データにアクセスしてみます。最後のシナリオでのみ、従業員データへのアクセス権がWebサイトから付与されます。
login.aspx
ではなくDefault.aspx
になるようにURLを変更して[Enter]キーを押します。アクセスが拒否され、ログイン・ページにリダイレクトされます。これは、匿名ユーザーがWebサイトを参照できず、資格証明を持つユーザーのみがアクセスできることを示します。
認証メカニズムを試す場合は、この手順を繰り返すか、または様々な操作を試してみます。様々な操作で、新しいブラウザを起動するか、またはブラウザ・キャッシュを消去します。Webページはブラウザにキャッシュされるため、Default.aspx
に再度アクセスすると、キャッシュされたそのWebページが表示される場合があります。これは意図された動作ではなく、Webページは、新しいブラウザ・インスタンスを使用するか、またはブラウザ・キャッシュを消去することによって完了するASP.NETプロバイダ認証プロセスを実行する必要があります。
login.aspx
の後のテキストを削除します。これによって、URLは最初にサイトにアクセスしたときの元の状態に戻ります。ユーザー名Bob、および英数字以外の文字を1文字含む7文字以上のパスワードを入力します。
「Log In」をクリックします。
「Your login attempt was not successful. Please try again.」というメッセージが示されたページが表示されます。
Bobは認可されたユーザーではありません。このユーザーによるアクセスはWebサイトによって適切に拒否されました。
「Log In」をクリックします。
スクリーンショットに示すように、このユーザーによるアクセスは拒否され、このユーザーの資格証明がOracle Membership Providerに格納された資格証明では検証できなかったことが示されます。
「Log In」をクリックします。
従業員データが表示されます。これによって、認可されたユーザーのみがデータにアクセスできることが示されます。このように、Oracle Providers for ASP.NETでは、非常に単純な方法でWebサイトのセキュリティが提供されています。
これで、データ駆動型のASP.NET Webアプリケーションが作成されました。このアプリケーションによって、認証が行われ、データベースから従業員データが取得されます。
|
![]() Copyright © 2009 Oracle Corporation. All Rights Reserved. |
|