FormsAuthentication.RedirectFromLoginPage Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Kimliği doğrulanmış bir kullanıcıyı özgün istenen URL'ye veya varsayılan URL'ye geri yönlendirir.
Aşırı Yüklemeler
RedirectFromLoginPage(String, Boolean) |
Kimliği doğrulanmış bir kullanıcıyı özgün istenen URL'ye veya varsayılan URL'ye geri yönlendirir. |
RedirectFromLoginPage(String, Boolean, String) |
Kimliği doğrulanmış bir kullanıcıyı, forms-authentication tanımlama bilgisi için belirtilen tanımlama bilgisi yolunu kullanarak ilk istenen URL'ye veya varsayılan URL'ye geri yönlendirir. |
RedirectFromLoginPage(String, Boolean)
Kimliği doğrulanmış bir kullanıcıyı özgün istenen URL'ye veya varsayılan URL'ye geri yönlendirir.
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)
Parametreler
- userName
- String
Kimliği doğrulanmış kullanıcı adı.
- createPersistentCookie
- Boolean
Dayanıklı bir tanımlama bilgisi (tarayıcı oturumlarında kaydedilen çerez) oluşturmak için true
; aksi takdirde false
.
Özel durumlar
Sorgu dizesinde belirtilen dönüş URL'si HTTP: veya HTTPS: dışında bir protokol içerir.
Örnekler
Aşağıdaki kod örneği, doğrulanmış kullanıcıları başlangıçta istenen URL'ye veya DefaultUrlyönlendirir. Kod örneği, kullanıcıları doğrulamak için ASP.NET üyeliğini kullanır. ASP.NET üyelik hakkında daha fazla bilgi için bkz. ÜyelikKullanarak Kullanıcıları Yönetme.
Önemli
Bu örnek, olası bir güvenlik tehdidi olan kullanıcı girişini kabul eden bir metin kutusu içerir. Varsayılan olarak, ASP.NET Web sayfaları kullanıcı girişinin betik veya HTML öğeleri içermediğini doğrular. Daha fazla bilgi için bkz. Betik Açıklarına Genel Bakış.
<%@ 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>
Açıklamalar
RedirectFromLoginPage yöntemi, ReturnURL
değişken adını kullanarak sorgu dizesinde belirtilen URL'ye yeniden yönlendirir. Örneğin, URL http://www.contoso.com/login.aspx?ReturnUrl=caller.aspx
RedirectFromLoginPage yöntemi caller.aspx
dönüş URL'sine yönlendirilir.
ReturnURL
değişkeni yoksa, RedirectFromLoginPage yöntemi DefaultUrl özelliğindeki URL'ye yeniden yönlendirir.
ASP.NET tarayıcı oturum açma sayfasına yeniden yönlendirildiğinde dönüş URL'sini otomatik olarak ekler.
Varsayılan olarak, ReturnUrl
değişkeni geçerli uygulama içindeki bir sayfaya başvurmalıdır.
ReturnUrl
farklı bir uygulamadaki veya farklı bir sunucudaki sayfaya başvuruyorsa, RedirectFromLoginPage yöntemleri DefaultUrl özelliğindeki URL'ye yönlendirilir. Geçerli uygulamanın dışındaki bir sayfaya yeniden yönlendirmelere izin vermek istiyorsanız, formlarının yapılandırma öğesinin enableCrossAppRedirects
özniteliğini kullanarak EnableCrossAppRedirects özelliğini true
olarak ayarlamanız gerekir.
Önemli
EnableCrossAppRedirects özelliğinin, uygulamalar arası yeniden yönlendirmelere izin vermek için true
olarak ayarlanması olası bir güvenlik tehdididir. Daha fazla bilgi için EnableCrossAppRedirects özelliğine bakın.
CookiesSupported özelliği true
ise ve ReturnUrl
değişkeni geçerli uygulama içindeyse veya EnableCrossAppRedirects özelliği true
ise, RedirectFromLoginPage yöntemi bir kimlik doğrulama bileti verir ve SetAuthCookie yöntemini kullanarak bunu varsayılan tanımlama bilgisine yerleştirir.
CookiesSupported
false
ve yeniden yönlendirme yolu geçerli uygulamadaki bir URL'ye ise, bilet yeniden yönlendirme URL'sinin bir parçası olarak verilir.
CookiesSupported
false
ise EnableCrossAppRedirectstrue
ve yeniden yönlendirme URL'si geçerli uygulama içindeki bir sayfaya başvurmuyorsa, RedirectFromLoginPage yöntemi bir kimlik doğrulama bileti verir ve bunu QueryString özelliğine yerleştirir.
Ayrıca bkz.
- Web Uygulaması Güvenliği
ASP.NET
Şunlara uygulanır
RedirectFromLoginPage(String, Boolean, String)
Kimliği doğrulanmış bir kullanıcıyı, forms-authentication tanımlama bilgisi için belirtilen tanımlama bilgisi yolunu kullanarak ilk istenen URL'ye veya varsayılan URL'ye geri yönlendirir.
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)
Parametreler
- userName
- String
Kimliği doğrulanmış kullanıcı adı.
- createPersistentCookie
- Boolean
Dayanıklı bir tanımlama bilgisi (tarayıcı oturumlarında kaydedilen çerez) oluşturmak için true
; aksi takdirde false
.
- strCookiePath
- String
Forms-authentication bileti için tanımlama bilgisi yolu.
Özel durumlar
Sorgu dizesinde belirtilen dönüş URL'si HTTP: veya HTTPS: dışında bir protokol içerir.
Açıklamalar
RedirectFromLoginPage yöntemi, ReturnURL
değişken adını kullanarak sorgu dizesinde belirtilen dönüş URL'sine yönlendirir. Örneğin, URL http://www.contoso.com/login.aspx?ReturnUrl=caller.aspx
RedirectFromLoginPage yöntemi caller.aspx
dönüş URL'sine yönlendirilir.
ReturnURL
değişkeni yoksa, RedirectFromLoginPage yöntemi DefaultUrl özelliğindeki URL'ye yeniden yönlendirir.
ASP.NET tarayıcı oturum açma sayfasına yeniden yönlendirildiğinde dönüş URL'sini otomatik olarak ekler.
Varsayılan olarak, ReturnUrl
değişkeni geçerli uygulama içindeki bir sayfaya başvurmalıdır.
ReturnUrl
farklı bir uygulamadaki veya farklı bir sunucudaki bir sayfaya başvuruyorsa, RedirectFromLoginPage yöntemi DefaultUrl özelliğindeki URL'ye yeniden yönlendirir. Geçerli uygulamanın dışındaki bir sayfaya yeniden yönlendirmelere izin vermek istiyorsanız, formlarının yapılandırma öğesinin enableCrossAppRedirects
özniteliğini kullanarak EnableCrossAppRedirects özelliğini true
olarak ayarlamanız gerekir.
Önemli
EnableCrossAppRedirects özelliğinin, uygulamalar arası yeniden yönlendirmelere izin vermek için true
olarak ayarlanması olası bir güvenlik tehdididir. Daha fazla bilgi için EnableCrossAppRedirects özelliğine bakın.
CookiesSupported özelliği true
ise ve ReturnUrl
değişkeni geçerli uygulama içindeyse veya EnableCrossAppRedirects özelliği true
ise, RedirectFromLoginPage yöntemi bir kimlik doğrulama bileti verir ve SetAuthCookie yöntemini kullanarak strCookiePath
parametresi tarafından belirtilen tanımlama bilgisine yerleştirir.
CookiesSupported
false
ve yeniden yönlendirme yolu geçerli uygulamadaki bir URL'ye ise, bilet yeniden yönlendirme URL'sinin bir parçası olarak verilir.
CookiesSupported
false
ise EnableCrossAppRedirectstrue
ve yeniden yönlendirme URL'si geçerli uygulama içindeki bir sayfaya başvurmuyorsa, RedirectFromLoginPage yöntemi bir kimlik doğrulama bileti verir ve bunu QueryString özelliğine yerleştirir.
Ayrıca bkz.
- Web Uygulaması Güvenliği
ASP.NET