- PR -

クッキーレスでのフォーム認証の動作について

1
投稿者投稿内容
くろ
会議室デビュー日: 2009/03/12
投稿数: 2
投稿日時: 2009-03-13 00:14
クッキーレスでのフォーム認証の動作についてご教授をお願いいたします。

webで見つけたサンプルを利用してクッキーレスの認証のテストを行いましたが
動作が考えていたものと違うのですが、私の認識が違うのでしょうか?

フォーム認証後にURL中のセッションIDを適当に変更しても
認証済みとして判断されます。
また、異なるブラウザに認証後のURLをコピペした場合は認証済みに
なるものだと思っていましたが、ログイン画面に戻されます。

クッキーレスに設定しているにも関わらずヘッダにクッキーが
入っているようなのですが、これが認証に使われているのでしょうか?

以下がテストしたソースです。
宜しくお願いいたします。

--- root/login.aspx ---------------------------------------------

<%@ Page ContentType="text/html" Language="VB" %>
<script runat="Server">
Sub objBtn_Click(sender As Object, e As EventArgs)
If FormsAuthentication.Authenticate(txtUsr.Text,txtPass.Text) Then
FormsAuthentication.RedirectFromLoginPage(txtUsr.Text,False)
Else
objLbl.Text="正しいユーザーID、パスワードを入力してください"
End If
End Sub
</script>
<html>
<head>
<title>フォーム認証ログイン</title>
</head>
<body>
<form runat="Server">
<center>
<h1>フォーム認証ログイン</h1>
<hr />
<b>ユーザーID:</b>
<asp:TextBox id="txtUsr" runat="Server" Columns="12" /><br />
<b>パスワード:</b>
<asp:TextBox id="txtPass" runat="Server" Columns="11" TextMode="Password" />
<br />
<asp:Button id="objBtn" runat="Server" Text="ログイン" OnClick="objBtn_Click" /><br />
<asp:Label id="objLbl" runat="Server" ForeColor="Red" />
</center>
</form>
</body>
</html>

--- root/web.config ---------------------------------------------

<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
<system.web>
<authentication mode="Forms">
<forms name="Insider.NET" loginUrl="login.aspx"
protection="All" timeout="30">
<credentials passwordFormat="Clear">
<user name="test" password="test" />
</credentials>
</forms>
</authentication>
<sessionState cookieless="true" />
</system.web>
</configuration>

--- root/auth/sample.aspx ---------------------------------------

<%@ Page ContentType="text/html" Language="VB" %>
<html>
<head>
<title>フォーム認証ログイン</title>
</head>
<body>
<form>
<center>認証に成功しました。</center>
</form>
</body>
</html>

--- root/auth/web.config ----------------------------------------

<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
<system.web>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</configuration>
なちゃ
ぬし
会議室デビュー日: 2003/06/11
投稿数: 872
投稿日時: 2009-03-13 02:02
わりあいよく見る勘違いですが、セッションと認証は別物で、独立した概念です。
この設定ではセッション管理はクッキーレスになっていますが、フォーム認証はなっていません。
くろ
会議室デビュー日: 2009/03/12
投稿数: 2
投稿日時: 2009-03-13 14:30
ご返答ありがとうございます。
ご返答いただいたように認証は別に設定する必要があるようですね。
調査してみます。

ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)