FormsAuthentication.RedirectFromLoginPage メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
認証されたユーザーを、最初に要求された URL または既定の URL にリダイレクトします。
オーバーロード
RedirectFromLoginPage(String, Boolean) |
認証されたユーザーを、最初に要求された URL または既定の URL にリダイレクトします。 |
RedirectFromLoginPage(String, Boolean, String) |
認証されたユーザーを、フォーム認証 Cookie の指定された Cookie パスを使用して、最初に要求された 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
永続的な Cookie (ブラウザー セッション間で保存される Cookie) を作成する 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 メソッドは、ReturnURL
変数名を使用して、クエリ文字列で指定された URL にリダイレクトします。 たとえば、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 に配置します。
CookiesSupported が false
され、リダイレクト パスが現在のアプリケーションの URL である場合、チケットはリダイレクト URL の一部として発行されます。
CookiesSupported が false
されている場合、EnableCrossAppRedirects が true
され、リダイレクト URL が現在のアプリケーション内のページを参照していない場合、RedirectFromLoginPage メソッドは認証チケットを発行し、QueryString プロパティに配置します。
こちらもご覧ください
適用対象
RedirectFromLoginPage(String, Boolean, String)
認証されたユーザーを、フォーム認証 Cookie の指定された Cookie パスを使用して、最初に要求された 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
永続的な Cookie (ブラウザー セッション間で保存される Cookie) を作成する true
。それ以外の場合は、false
します。
- strCookiePath
- String
フォーム認証チケットの Cookie パス。
例外
クエリ文字列に指定された戻り URL には、HTTP: または HTTPS: 以外のプロトコルが含まれています。
注釈
RedirectFromLoginPage メソッドは、ReturnURL
変数名を使用して、クエリ文字列で指定された戻り URL にリダイレクトします。 たとえば、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 に配置します。
CookiesSupported が false
され、リダイレクト パスが現在のアプリケーションの URL である場合、チケットはリダイレクト URL の一部として発行されます。
CookiesSupported が false
されている場合、EnableCrossAppRedirects が true
され、リダイレクト URL が現在のアプリケーション内のページを参照していない場合、RedirectFromLoginPage メソッドは認証チケットを発行し、QueryString プロパティに配置します。
こちらもご覧ください
適用対象
.NET