FormsAuthentication.RedirectFromLoginPage メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
認証済みユーザーを最初に要求された URL または既定の URL にリダイレクトします。
オーバーロード
RedirectFromLoginPage(String, Boolean) |
認証済みユーザーを最初に要求された URL または既定の URL にリダイレクトします。 |
RedirectFromLoginPage(String, Boolean, String) |
フォーム認証クッキーに指定されているクッキー パスを使用して、認証済みユーザーを最初に要求された URL または既定の URL にリダイレクトします。 |
RedirectFromLoginPage(String, Boolean)
認証済みユーザーを最初に要求された URL または既定の URL にリダイレクトします。
public:
static void RedirectFromLoginPage(System::String ^ userName, bool createPersistentCookie);
public static void RedirectFromLoginPage (string userName, bool createPersistentCookie);
static member RedirectFromLoginPage : string * bool -> unit
Public Shared Sub RedirectFromLoginPage (userName As String, createPersistentCookie As Boolean)
パラメーター
- userName
- String
認証済みユーザー名。
- createPersistentCookie
- Boolean
複数のブラウザー セッションにわたって保存される永続的なクッキーを作成する場合は true
。それ以外の場合は false
。
例外
クエリ文字列内に指定されている戻り先 URL に、HTTP: または HTTPS: 以外のプロトコルが含まれています。
例
次のコード例では、検証済みのユーザーを、最初に要求された URL または DefaultUrl. コード例では、ASP.NET メンバーシップを使用してユーザーを検証します。 ASP.NET メンバーシップの詳細については、「メンバーシップを使用したユーザーの管理」を参照してください。
重要
この例には、潜在的なセキュリティ上の脅威であるユーザー入力を受け入れるテキスト ボックスが含まれています。 既定では、ASP.NET Web ページによって、ユーザー入力にスクリプトまたは HTML 要素が含まれていないかどうかが検証されます。 詳細については、「スクリプトによる攻略の概要」を参照してください。
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
public void Login_OnClick(object sender, EventArgs args)
{
if (Membership.ValidateUser(UsernameTextbox.Text, PasswordTextbox.Text))
FormsAuthentication.RedirectFromLoginPage(UsernameTextbox.Text, NotPublicCheckBox.Checked);
else
Msg.Text = "Login failed. Please check your user name and password and try again.";
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Login</title>
</head>
<body>
<form id="form1" runat="server">
<h3>Login</h3>
<asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />
Username: <asp:Textbox id="UsernameTextbox" runat="server" /><br />
Password: <asp:Textbox id="PasswordTextbox" runat="server" TextMode="Password" /><br />
<asp:Button id="LoginButton" Text="Login" OnClick="Login_OnClick" runat="server" />
<asp:CheckBox id="NotPublicCheckBox" runat="server" />
Check here if this is <span style="text-decoration:underline">not</span> a public computer.
</form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Security" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Public Sub Login_OnClick(sender As Object, args As EventArgs)
If (Membership.ValidateUser(UsernameTextbox.Text, PasswordTextbox.Text)) Then
FormsAuthentication.RedirectFromLoginPage(UsernameTextbox.Text, NotPublicCheckBox.Checked)
Else
Msg.Text = "Login failed. Please check your user name and password and try again."
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Login</title>
</head>
<body>
<form id="form1" runat="server">
<h3>Login</h3>
<asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />
Username: <asp:Textbox id="UsernameTextbox" runat="server" /><br />
Password: <asp:Textbox id="PasswordTextbox" runat="server" TextMode="Password" /><br />
<asp:Button id="LoginButton" Text="Login" OnClick="Login_OnClick" runat="server" />
<asp:CheckBox id="NotPublicCheckBox" runat="server" />
Check here if this is <span style="text-decoration:underline">not</span> a public computer.
</form>
</body>
</html>
注釈
このメソッドは RedirectFromLoginPage 、変数名を使用してクエリ文字列で指定された URL に ReturnURL
リダイレクトします。 たとえば、URL http://www.contoso.com/login.aspx?ReturnUrl=caller.aspx
では、メソッドは RedirectFromLoginPage 戻り値の URL にリダイレクトします caller.aspx
。 変数が ReturnURL
存在しない場合、メソッドは RedirectFromLoginPage プロパティ内 DefaultUrl の URL にリダイレクトします。
ASP.NET ブラウザーがログイン ページにリダイレクトされると、戻り URL が自動的に追加されます。
既定では、変数は現在の ReturnUrl
アプリケーション内のページを参照する必要があります。 別のアプリケーションまたは別のサーバー上のページを参照している場合 ReturnUrl
、メソッドは RedirectFromLoginPage プロパティ内 DefaultUrl の URL にリダイレクトされます。 現在のアプリケーションの外部のページへのリダイレクトを許可する場合は、フォーム構成要素の属性をEnableCrossAppRedirects使用enableCrossAppRedirects
するようにプロパティを設定するtrue
必要があります。
重要
EnableCrossAppRedirectsアプリケーション間リダイレクトを許可するようにtrue
プロパティを設定することは、潜在的なセキュリティ上の脅威です。 詳細については、EnableCrossAppRedirects プロパティを参照してください。
プロパティが CookiesSupported 、変数がtrue
現在のReturnUrl
アプリケーション内にあるか、プロパティEnableCrossAppRedirects内にある場合、メソッドはtrue
RedirectFromLoginPage認証チケットを発行し、メソッドを使用してSetAuthCookie既定の Cookie に配置します。
リダイレクト パスがfalse
現在のアプリケーションの URL である場合CookiesSupported、チケットはリダイレクト URL の一部として発行されます。 が 、is で、リダイレクト URL が現在のアプリケーション内のページを参照していない場合CookiesSupported、メソッドはRedirectFromLoginPage認証チケットを発行してプロパティにQueryString配置します。true
EnableCrossAppRedirects false
こちらもご覧ください
適用対象
RedirectFromLoginPage(String, Boolean, String)
フォーム認証クッキーに指定されているクッキー パスを使用して、認証済みユーザーを最初に要求された URL または既定の URL にリダイレクトします。
public:
static void RedirectFromLoginPage(System::String ^ userName, bool createPersistentCookie, System::String ^ strCookiePath);
public static void RedirectFromLoginPage (string userName, bool createPersistentCookie, string strCookiePath);
static member RedirectFromLoginPage : string * bool * string -> unit
Public Shared Sub RedirectFromLoginPage (userName As String, createPersistentCookie As Boolean, strCookiePath As String)
パラメーター
- userName
- String
認証済みユーザー名。
- createPersistentCookie
- Boolean
複数のブラウザー セッションにわたって保存される永続的なクッキーを作成する場合は true
。それ以外の場合は false
。
- strCookiePath
- String
フォーム認証チケットのクッキー パス。
例外
クエリ文字列内に指定されている戻り先 URL に、HTTP: または HTTPS: 以外のプロトコルが含まれています。
注釈
このメソッドは RedirectFromLoginPage 、変数名を使用してクエリ文字列に指定された戻り URL に ReturnURL
リダイレクトします。 たとえば、URL http://www.contoso.com/login.aspx?ReturnUrl=caller.aspx
では、メソッドは RedirectFromLoginPage 戻り値の URL にリダイレクトします caller.aspx
。 変数が ReturnURL
存在しない場合、メソッドは RedirectFromLoginPage プロパティ内 DefaultUrl の URL にリダイレクトします。
ASP.NET ブラウザーがログイン ページにリダイレクトされると、戻り URL が自動的に追加されます。
既定では、変数は現在の ReturnUrl
アプリケーション内のページを参照する必要があります。 別のアプリケーションまたは別のサーバー上のページを参照している場合 ReturnUrl
、メソッドは RedirectFromLoginPage プロパティ内 DefaultUrl の URL にリダイレクトされます。 現在のアプリケーションの外部のページへのリダイレクトを許可する場合は、フォーム構成要素の属性をEnableCrossAppRedirects使用enableCrossAppRedirects
するようにプロパティを設定するtrue
必要があります。
重要
EnableCrossAppRedirectsアプリケーション間リダイレクトを許可するようにtrue
プロパティを設定することは、潜在的なセキュリティ上の脅威です。 詳細については、EnableCrossAppRedirects プロパティを参照してください。
プロパティが CookiesSupported 、変数がtrue
現在のReturnUrl
アプリケーション内にあるか、プロパティEnableCrossAppRedirects内にある場合、メソッドはtrue
RedirectFromLoginPage認証チケットを発行し、メソッドを使用してSetAuthCookieパラメーターでstrCookiePath
指定された Cookie に配置します。
リダイレクト パスがfalse
現在のアプリケーションの URL である場合CookiesSupported、チケットはリダイレクト URL の一部として発行されます。 が 、is で、リダイレクト URL が現在のアプリケーション内のページを参照していない場合CookiesSupported、メソッドはRedirectFromLoginPage認証チケットを発行してプロパティにQueryString配置します。true
EnableCrossAppRedirects false