次の方法で共有


FormsAuthentication.RedirectFromLoginPage メソッド

定義

認証済みユーザーを最初に要求された 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内にある場合、メソッドはtrueRedirectFromLoginPage認証チケットを発行し、メソッドを使用してSetAuthCookie既定の Cookie に配置します。

リダイレクト パスがfalse現在のアプリケーションの URL である場合CookiesSupported、チケットはリダイレクト URL の一部として発行されます。 が 、is で、リダイレクト URL が現在のアプリケーション内のページを参照していない場合CookiesSupported、メソッドはRedirectFromLoginPage認証チケットを発行してプロパティにQueryString配置します。trueEnableCrossAppRedirects 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内にある場合、メソッドはtrueRedirectFromLoginPage認証チケットを発行し、メソッドを使用してSetAuthCookieパラメーターでstrCookiePath指定された Cookie に配置します。

リダイレクト パスがfalse現在のアプリケーションの URL である場合CookiesSupported、チケットはリダイレクト URL の一部として発行されます。 が 、is で、リダイレクト URL が現在のアプリケーション内のページを参照していない場合CookiesSupported、メソッドはRedirectFromLoginPage認証チケットを発行してプロパティにQueryString配置します。trueEnableCrossAppRedirects false

こちらもご覧ください

適用対象