Membership Sınıf

Tanım

Kullanıcı kimlik bilgilerini doğrular ve Kullanıcı ayarlarını yönetir.Validates user credentials and manages user settings. Bu sınıf devralınamaz.This class cannot be inherited.

public ref class Membership abstract sealed
public static class Membership
type Membership = class
Public Class Membership
Devralma
Membership

Örnekler

Aşağıdaki kod örneği, Forms kimlik doğrulaması ve ASP.NET üyeliğini kullanacak şekilde yapılandırılmış bir ASP.NET uygulamasının oturum açma sayfasını gösterir.The following code example shows the login page for an ASP.NET application configured to use forms authentication and ASP.NET membership. Sağlanan kullanıcı kimlik bilgileri geçersizse, kullanıcıya bir ileti görüntülenir.If the supplied user credentials are invalid, a message is displayed to the user. Aksi takdirde, Kullanıcı, yöntemi kullanılarak istenen URL 'ye yeniden yönlendirilir RedirectFromLoginPage .Otherwise, the user is redirected to the originally requested URL using the RedirectFromLoginPage method.

Not

ASP.NET oturum açma denetimleri ( Login , LoginView , LoginStatus , LoginName , ve PasswordRecovery ), kullanıcılara kimlik bilgileri istemek ve üyelik sistemindeki kimlik bilgilerini doğrulamak için gereken tüm mantığı kapsülleyip, sınıfı kullanarak programlı denetim yerine kullanılabilir Membership .The ASP.NET login controls (Login, LoginView, LoginStatus, LoginName, and PasswordRecovery) encapsulate virtually all of the logic required to prompt users for credentials and validate the credentials in the membership system and can be used in place of programmatic checking using the Membership class.

Önemli

Bu örnek, olası bir güvenlik tehdidi olan kullanıcı girişini kabul eden bir metin kutusu içerir.This example contains a text box that accepts user input, which is a potential security threat. Varsayılan olarak, ASP.NET Web sayfaları Kullanıcı girişinin betik veya HTML öğeleri içermediğinden emin olarak doğrular.By default, ASP.NET Web pages validate that user input does not include script or HTML elements. Daha fazla bilgi için bkz. komut dosyası açıklardan genel bakış.For more information, see Script Exploits Overview.

<%@ 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

MembershipSınıfı, Kullanıcı kimlik bilgilerini doğrulamak ve parolalar ile e-posta adresleri gibi Kullanıcı ayarlarını yönetmek için ASP.NET uygulamalarında kullanılır.The Membership class is used in ASP.NET applications to validate user credentials and manage user settings such as passwords and email addresses. MembershipSınıfı, FormsAuthentication bir Web uygulaması veya sitesi kullanıcılarının kimliğini doğrulamak için tamamen bir sistem oluşturmak üzere kendi başına veya ile birlikte kullanılabilir.The Membership class can be used on its own, or in conjunction with the FormsAuthentication to create a complete system for authenticating users of a Web application or site. LoginDenetim, Membership kullanıcıları doğrulamaya yönelik kullanışlı bir mekanizma sağlamak için sınıfını kapsüller.The Login control encapsulates the Membership class to provide a convenient mechanism for validating users.

Not

ASP.NET 'in üyelik özelliklerine alışkın değilseniz, bkz. devam etmeden önce üyeliğe giriş .If you are not familiar with the membership features of ASP.NET, see Introduction to Membership before continuing. Üyelikle ilgili diğer konuların listesi için bkz. üyeliği kullanarak kullanıcıları yönetme.For a list of other topics related to membership, see Managing Users by Using Membership.

MembershipSınıfı için tesis sağlar:The Membership class provides facilities for:

  • Yeni kullanıcılar oluşturuluyor.Creating new users.

  • Üyelik bilgilerini (Kullanıcı adları, parolalar, e-posta adresleri ve destekleyici veriler) Microsoft SQL Server veya alternatif bir veri deposunda depolama.Storing membership information (user names, passwords, email addresses, and supporting data) in Microsoft SQL Server or in an alternative data store.

  • Sitenizi ziyaret eden kullanıcıların kimliğini doğrulama.Authenticating users who visit your site. Kullanıcıların kimliğini programlama yoluyla doğrulayabilir veya Login çok az kod gerektiren bir kimlik doğrulama sistemi oluşturmak için denetimini kullanabilirsiniz.You can authenticate users programmatically, or you can use the Login control to create a complete authentication system that requires little or no code.

  • Oluşturma, değiştirme, alma ve sıfırlama dahil olmak üzere parolaları yönetme ve benzeri.Managing passwords, which includes creating, changing, retrieving, and resetting them, and so on. İsteğe bağlı olarak, parolasını unutmuş kullanıcılar için parola sıfırlama veya alma isteklerinin kimliğini doğrulamak için parola sorusu ve yanıtı istemek üzere ASP.NET üyeliğini yapılandırabilirsiniz.You can optionally configure ASP.NET membership to require a password question and answer to authenticate password reset or retrieval requests for users that have forgotten their password.

ASP.NET üyeliği kimlik doğrulaması Için ASP.NET içinde kendi kendine yerleştirilmiş bir özellik olsa da, sitenize yönelik yetkilendirme hizmetleri sağlamak için ASP.NET rol yönetimiyle tümleştirilebilir.Although ASP.NET membership is a self-standing feature in ASP.NET For authentication, it can be integrated with ASP.NET role management to provide authorization services for your site. Üyelik, System.Web.Profile bireysel kullanıcılara uyarlanbilen uygulamaya özgü özelleştirme sağlamak için ASP.net kullanıcısı ile de tümleştirilebilir.Membership can also be integrated with the ASP.NET user System.Web.Profile to provide application-specific customization that can be tailored to individual users. Ayrıntılar için bkz. rol yönetimini anlama ve ASP.net profili özelliklerine genel bakış.For details, see Understanding Role Management and ASP.NET Profile Properties Overview.

MembershipSınıfı, bir veri kaynağıyla iletişim kurmak için üyelik sağlayıcılarını kullanır.The Membership class relies on membership providers to communicate with a data source. .NET Framework, SqlMembershipProvider Kullanıcı bilgilerini bir Microsoft SQL Server veritabanında depolayan ve bir ActiveDirectoryMembershipProvider Active Directory veya Active Directory uygulama modu (adam) sunucusu üzerinde Kullanıcı bilgilerini depolamanıza olanak tanıyan bir içerir.The .NET Framework includes a SqlMembershipProvider, which stores user information in a Microsoft SQL Server database, and an ActiveDirectoryMembershipProvider, which enables you to store user information on an Active Directory or Active Directory Application Mode (ADAM) server. Ayrıca, sınıfı tarafından kullanılabilecek alternatif bir veri kaynağıyla iletişim kurmak için özel bir üyelik sağlayıcısı da uygulayabilirsiniz Membership .You can also implement a custom membership provider to communicate with an alternative data source that can be used by the Membership class. Özel üyelik sağlayıcıları MembershipProvider soyut sınıfı devralınır.Custom membership providers inherit the MembershipProvider abstract class. Daha fazla bilgi için bkz. Üyelik sağlayıcısı uygulama.For more information, see Implementing a Membership Provider.

Varsayılan olarak, ASP.NET üyeliği tüm ASP.NET uygulamaları için etkinleştirilmiştir.By default, ASP.NET membership is enabled for all ASP.NET applications. Varsayılan üyelik sağlayıcısı, SqlMembershipProvider makine yapılandırmasında adı ile belirtilir AspNetSqlProvider .The default membership provider is the SqlMembershipProvider and is specified in the machine configuration with the name AspNetSqlProvider. Öğesinin varsayılan örneği, SqlMembershipProvider Microsoft SQL Server yerel bir örneğine bağlanacak şekilde yapılandırılmıştır.The default instance of the SqlMembershipProvider is configured to connect to a local instance of Microsoft SQL Server.

Varsayılan sağlayıcı olarak örnekten başka bir sağlayıcı belirtmek için varsayılan ayarları değiştirebilir SqlMembershipProvider AspNetSqlProvider veya Web.config dosyasını kullanarak özel bir sağlayıcının bir örneğini ASP.NET uygulamanız için varsayılan sağlayıcı olarak belirtebilirsiniz.You can modify the default settings to specify a SqlMembershipProvider other than the AspNetSqlProvider instance as the default provider, or specify an instance of a custom provider as the default provider for your ASP.NET application using the Web.config file. Web.config dosyasındaki Üyelik yapılandırması bölümünü kullanarak Web uygulamanız için ASP.NET üyelik yapılandırmasını belirtebilirsiniz.You can specify the ASP.NET membership configuration for your Web application using the membership configuration section in the Web.config file. Varsayılan sağlayıcılardan biri dışında bir üyelik sağlayıcısı belirtmek için Üyelik bölümünün sağlayıcılar alt bölümünü kullanabilirsiniz.You can use the providers subsection of the membership section to specify a membership provider other than one of the default providers. Örneğin, aşağıdaki Üyelik bölümü geçerli uygulama yapılandırmasından varsayılan üyelik sağlayıcılarını kaldırır ve SqlProvider adında bir SQL Server örneğine bağlanan yeni bir sağlayıcı ekler AspSqlServer .For example, the following membership section removes the default membership providers from the current application configuration and adds a new provider with a name of SqlProvider that connects to a SQL Server instance named AspSqlServer.

<configuration>  
  <connectionStrings>  
    <add name="SqlServices" connectionString="Data Source=AspSqlServer;Integrated Security=SSPI;Initial Catalog=aspnetdb;" />  
  </connectionStrings>  
  <system.web>  
    <membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="20">  
      <providers>  
        <remove name="AspNetSqlProvider" />  
        <add name="SqlProvider"  
          type="System.Web.Security.SqlMembershipProvider"  
          connectionStringName="SqlServices"  
          enablePasswordRetrieval="false"  
          enablePasswordReset="true"  
          requiresQuestionAndAnswer="true"  
          passwordFormat="Hashed"  
          applicationName="/" />  
      </providers>  
    </membership>  
  </system.web>  
</configuration>  

Özellikler

ApplicationName

Uygulamanın adını alır veya ayarlar.Gets or sets the name of the application.

EnablePasswordReset

Geçerli üyelik sağlayıcısının kullanıcıların parolalarını sıfırlamasına izin verecek şekilde yapılandırılıp yapılandırılmadığını gösteren bir değer alır.Gets a value indicating whether the current membership provider is configured to allow users to reset their passwords.

EnablePasswordRetrieval

Geçerli üyelik sağlayıcısının kullanıcıların parolalarını almasına izin verecek şekilde yapılandırılıp yapılandırılmadığını gösteren bir değer alır.Gets a value indicating whether the current membership provider is configured to allow users to retrieve their passwords.

HashAlgorithmType

Parolaların karmasını sağlamak için kullanılan algoritmanın tanımlayıcısı.The identifier of the algorithm used to hash passwords.

MaxInvalidPasswordAttempts

Üyelik kullanıcısı kilitlenmeden önce izin verilen geçersiz parola veya parola yanıtı sayısını alır.Gets the number of invalid password or password-answer attempts allowed before the membership user is locked out.

MinRequiredNonAlphanumericCharacters

Geçerli bir parolada bulunması gereken en az özel karakter sayısını alır.Gets the minimum number of special characters that must be present in a valid password.

MinRequiredPasswordLength

Parola için gereken en düşük uzunluğu alır.Gets the minimum length required for a password.

PasswordAttemptWindow

Geçerli bir parola veya parola yanıtı sağlamak için ardışık başarısız denemelere ilişkin zaman penceresini alır.Gets the time window between which consecutive failed attempts to provide a valid password or password answer are tracked.

PasswordStrengthRegularExpression

Bir parolayı değerlendirmek için kullanılan normal ifadeyi alır.Gets the regular expression used to evaluate a password.

Provider

Uygulamanın varsayılan üyelik sağlayıcısına bir başvuru alır.Gets a reference to the default membership provider for the application.

Providers

ASP.NET uygulaması için üyelik sağlayıcılarının bir koleksiyonunu alır.Gets a collection of the membership providers for the ASP.NET application.

RequiresQuestionAndAnswer

Varsayılan üyelik sağlayıcısı 'nın parola sıfırlama ve alma için parola sorusunu yanıtlamasını gerektirip gerektirmediğini gösteren bir değer alır.Gets a value indicating whether the default membership provider requires the user to answer a password question for password reset and retrieval.

UserIsOnlineTimeWindow

Kullanıcının çevrimiçi olarak kabul edildiği Kullanıcı için son etkinlik tarih/saat damgasından sonraki dakika sayısını belirtir.Specifies the number of minutes after the last-activity date/time stamp for a user during which the user is considered online.

Yöntemler

CreateUser(String, String)

Veri deposuna yeni bir kullanıcı ekler.Adds a new user to the data store.

CreateUser(String, String, String)

Veri deposuna belirtilen e-posta adresine sahip yeni bir kullanıcı ekler.Adds a new user with a specified email address to the data store.

CreateUser(String, String, String, String, String, Boolean, MembershipCreateStatus)

Veri deposuna belirtilen özellik değerleriyle yeni bir kullanıcı ekler ve kullanıcının başarıyla oluşturulduğunu veya Kullanıcı oluşturma nedeninin başarısız olduğunu gösteren bir durum parametresi döndürür.Adds a new user with specified property values to the data store and returns a status parameter indicating that the user was successfully created or the reason the user creation failed.

CreateUser(String, String, String, String, String, Boolean, Object, MembershipCreateStatus)

Belirtilen özellik değerleriyle yeni bir Kullanıcı ve veri deposuna benzersiz bir tanımlayıcı ekler ve kullanıcının başarıyla oluşturulduğunu veya Kullanıcı oluşturma nedeninin başarısız olduğunu gösteren bir durum parametresi döndürür.Adds a new user with specified property values and a unique identifier to the data store and returns a status parameter indicating that the user was successfully created or the reason the user creation failed.

DeleteUser(String)

Bir kullanıcıyı ve ilgili Kullanıcı verilerini veritabanından siler.Deletes a user and any related user data from the database.

DeleteUser(String, Boolean)

Veritabanından bir kullanıcıyı siler.Deletes a user from the database.

FindUsersByEmail(String)

E-posta adresinin eşleşmesi için belirtilen e-posta adresini içerdiği bir üyelik kullanıcıları koleksiyonunu alır.Gets a collection of membership users where the email address contains the specified email address to match.

FindUsersByEmail(String, Int32, Int32, Int32)

E-posta adresinin eşleştirilecek belirtilen e-posta adresini içerdiği bir veri sayfasında, üyelik kullanıcıları koleksiyonunu alır.Gets a collection of membership users, in a page of data, where the email address contains the specified email address to match.

FindUsersByName(String)

Kullanıcı adının eşleştirilecek belirtilen kullanıcı adını içerdiği üyelik kullanıcıları koleksiyonunu alır.Gets a collection of membership users where the user name contains the specified user name to match.

FindUsersByName(String, Int32, Int32, Int32)

Kullanıcı adının eşleştirilecek belirtilen kullanıcı adını içerdiği bir veri sayfasında, üyelik kullanıcıları koleksiyonunu alır.Gets a collection of membership users, in a page of data, where the user name contains the specified user name to match.

GeneratePassword(Int32, Int32)

Belirtilen uzunlukta rastgele bir parola oluşturur.Generates a random password of the specified length.

GetAllUsers()

Veritabanındaki tüm kullanıcıların bir koleksiyonunu alır.Gets a collection of all the users in the database.

GetAllUsers(Int32, Int32, Int32)

Veritabanındaki tüm kullanıcıların bir koleksiyonunu veri sayfalarında alır.Gets a collection of all the users in the database in pages of data.

GetNumberOfUsersOnline()

Bir uygulamaya şu anda erişen kullanıcı sayısını alır.Gets the number of users currently accessing an application.

GetUser()

Veri kaynağından bilgileri alır ve geçerli oturum açan üyelik kullanıcısına ilişkin son etkinlik tarih/saat damgasını güncelleştirir.Gets the information from the data source and updates the last-activity date/time stamp for the current logged-on membership user.

GetUser(Boolean)

Geçerli oturum açan üyelik kullanıcısına ait veri kaynağından bilgileri alır.Gets the information from the data source for the current logged-on membership user. Belirtilmişse, geçerli oturum açan üyelik kullanıcısına ilişkin son etkinlik tarih/saat damgasını güncelleştirir.Updates the last-activity date/time stamp for the current logged-on membership user, if specified.

GetUser(Object)

Belirtilen benzersiz tanımlayıcıyla ilişkili üyelik kullanıcısına ait veri kaynağından bilgileri alır.Gets the information from the data source for the membership user associated with the specified unique identifier.

GetUser(Object, Boolean)

Belirtilen benzersiz tanımlayıcıyla ilişkili üyelik kullanıcısına ait veri kaynağından bilgileri alır.Gets the information from the data source for the membership user associated with the specified unique identifier. Belirtilmişse, kullanıcının son etkinlik tarih/saat damgasını güncelleştirir.Updates the last-activity date/time stamp for the user, if specified.

GetUser(String)

Belirtilen üyelik kullanıcısına ait veri kaynağından bilgileri alır.Gets the information from the data source for the specified membership user.

GetUser(String, Boolean)

Belirtilen üyelik kullanıcısına ait veri kaynağından bilgileri alır.Gets the information from the data source for the specified membership user. Belirtilmişse, kullanıcının son etkinlik tarih/saat damgasını güncelleştirir.Updates the last-activity date/time stamp for the user, if specified.

GetUserNameByEmail(String)

Kullanıcının e-posta adresinin belirtilen e-posta adresiyle eşleştiği bir Kullanıcı adı alır.Gets a user name where the email address for the user matches the specified email address.

UpdateUser(MembershipUser)

Veritabanını, belirtilen kullanıcı için bilgilerle güncelleştirir.Updates the database with the information for the specified user.

ValidateUser(String, String)

Sağlanan Kullanıcı adı ve parolasının geçerli olduğunu doğrular.Verifies that the supplied user name and password are valid.

Ekinlikler

ValidatingPassword

Bir kullanıcı oluşturulduğunda, bir parola değiştirildiğinde veya bir parola sıfırlandığında gerçekleşir.Occurs when a user is created, a password is changed, or a password is reset.

Şunlara uygulanır

Ayrıca bkz.