AuthorizationStoreRoleProvider Sınıf
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.
ASP.NET bir uygulama için rol üyeliği bilgilerinin XML dosyasında, Active Directory veya Active Directory Uygulama Modu sunucusunda bir yetkilendirme yöneticisi ilke deposunda depolanmasını yönetir.
public ref class AuthorizationStoreRoleProvider : System::Web::Security::RoleProvider
public class AuthorizationStoreRoleProvider : System.Web.Security.RoleProvider
type AuthorizationStoreRoleProvider = class
inherit RoleProvider
Public Class AuthorizationStoreRoleProvider
Inherits RoleProvider
- Devralma
Örnekler
Aşağıdaki kod örneğinde rol yönetimi için kullanılacak Web.config dosya kümesi gösterilmektedir AuthorizationStoreRoleProvider .
<configuration>
<connectionStrings>
<add name="AuthorizationServices" connectionString="msxml://~\App_Data\SampleStore.xml" />
</connectionStrings>
<system.web>
<authentication mode="Windows" />
<identity impersonate="true" />
<roleManager defaultProvider="AuthorizationStoreRoleProvider"
enabled="true"
cacheRolesInCookie="true"
cookieName=".ASPROLES"
cookieTimeout="30"
cookiePath="/"
cookieRequireSSL="false"
cookieSlidingExpiration="true"
cookieProtection="All" >
<providers>
<clear />
<add
name="AuthorizationStoreRoleProvider"
type="System.Web.Security.AuthorizationStoreRoleProvider"
connectionStringName="AuthorizationServices"
applicationName="SampleApplication"
cacheRefreshInterval="60"
scopeName="" />
</providers>
</roleManager>
</system.web>
</configuration>
Açıklamalar
Bu sınıf, Roles ve RolePrincipal sınıfları tarafından authorization-manager deposu kullanan bir ASP.NET uygulaması için rol yönetimi hizmetleri sağlamak üzere kullanılır. Uygulamanız için farklı yetkilendirme düzeyleri belirtmek üzere rol yönetimini kullanabilirsiniz. Yetkilendirme yöneticisine Microsoft Yönetim Konsolu kullanılarak erişilebilir.
AuthorizationStoreRoleProvider nesnesi hem Windows authentication hem de form kimlik doğrulama modlarıyla çalışır.
AuthorizationStoreRoleProvider nesnesini yerel XML dosyası veya Active Directory ya da Active Directory Uygulama Modu (ADAM) sunucusu kullanacak şekilde yapılandırabilirsiniz. Yerel bir dosya kullanılırken, bağlantı dizesi aşağıdaki örneğe benzer olmalıdır.
msxml://<path to xml file>
Yerel dosya bir ASP.NET Web uygulamasının dizin ağacında depolanıyorsa, kök dizini belirtmek için tilde ("~") karakterini kullanabilirsiniz. Örneğin, yerel dosyanın Web uygulamasının veri dizininde depolandığını belirtmek için aşağıdaki örneğe benzer bir bağlantı dizesi kullanırsınız.
msxml://~\App_Data\datafilename.xml
Important
Xml veri dosyasını Web uygulaması dizininde depolamak olası bir güvenlik tehdididir. Varsayılan olarak IIS, XML veri dosyalarını Web'e hizmet eder. ASP.NET bir uygulamada yerel veri dosyası kullanırken güvenliği artırmak için veri dosyasını App_Data dizininde depolamanız gerekir. Dizinde App_Data depolanan dosyalar Web'e sunulmaz.
İlke deposu için bir Active Directory veya ADAM sunucusu kullanıyorsanız, bağlantı dizesi aşağıdaki örneğe benzer olmalıdır.
msldap://myserver/CN=MyAzManStore,OU=MyOU,DC=MyDomain,DC=MyDC,DC=Com
Nesne yöntemlerinin belgelerinde AuthorizationStoreRoleProvider listelenen özel durumlar, nesnesi tarafından AuthorizationStoreRoleProvider tetiklenen özel durumlardır. Sağlayıcı, temel alınan Authentication Manager çalışma zamanına bağlı olduğundan, COMException nesne Authentication Manager çalışma zamanına AuthorizationStoreRoleProvider bir yöntem çağrısı ilettiğinde bir özel durum oluşturulabilir.
Important
nesnesi AuthorizationStoreRoleProvider , kısmi güven ortamlarında çalışmak için aşağıdaki gereksinimlere sahiptir:
ASP.NET bir uygulamada dosya tabanlı ilke deposu kullanılırken, geçerli güven düzeyi tarafından verilen dosya G/Ç izinleri, sağlayıcı tarafından okuma ve yazma eylemlerine izin verilip verilmeyeceğini belirler. ASP.NET uygulamasının, ilke deposundaki verileri okumak için dosya üzerinde okuma iznine sahip olması ve yeni bilgileri kaydetmek veya ilke deposundaki mevcut bilgileri güncelleştirmek için yazma iznine sahip olması gerekir. Varsayılan Orta güven ilkesi dosyası, uygulama dizininde ASP.NET uygulama okuma/yazma izinleri verir. Varsayılan Düşük güven ilkesi dosyası, uygulama dizininde yalnızca ASP.NET bir uygulamaya okuma izni verir. Ayrıca, ASP.NET uygulamasının çalıştığı işlem kimliğinin, ilke dosyasını okumak ve/veya yazmak için dosya sistemi izinlerine sahip olması gerekir.
Active Directory veya ADAM sunucusu kullanırken, iç AuthorizationStoreRoleProvider nesne kodu COM birlikte çalışma kullandığından ASP.NET uygulamanın yönetilmeyen kod iznine ihtiyacı vardır.
AuthorizationStoreRoleProvider nesnesini ASP.NET dışında kullanırken, çağıran kodun yönetilmeyen kod iznine ihtiyacı vardır.
Oluşturucular
| Name | Description |
|---|---|
| AuthorizationStoreRoleProvider() |
AuthorizationStoreRoleProvider sınıfının yeni bir örneğini başlatır. |
Özellikler
| Name | Description |
|---|---|
| ApplicationName |
Rol bilgilerinin depolandığı ve alındığı yetkilendirme deposu uygulamasının adını alır veya ayarlar. |
| CacheRefreshInterval |
İlke deposu verilerinin önbelleğinin yenilenmesi arasındaki dakika sayısını alır. |
| Description |
Yönetim araçlarında veya diğer kullanıcı arabirimlerinde (UI) görüntülenmeye uygun kısa ve kolay bir açıklama alır. (Devralındığı yer: ProviderBase) |
| Name |
Yapılandırma sırasında sağlayıcıya başvurmak için kullanılan kolay adı alır. (Devralındığı yer: ProviderBase) |
| ScopeName |
Yetkilendirme deposunun kapsam adını alır veya ayarlar. |
Yöntemler
| Name | Description |
|---|---|
| AddUsersToRoles(String[], String[]) |
Belirtilen rollerin her birine belirtilen kullanıcı adlarını ekler. |
| CreateRole(String) |
Role authorization-manager ilke deposuna yeni bir rol ekler. |
| DeleteRole(String, Boolean) |
Yetkilendirme yöneticisi ilke deposundan bir rolü kaldırır. |
| Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
| FindUsersInRole(String, String) |
Bu yöntem yetkilendirme deposu rol sağlayıcısı tarafından desteklenmez. |
| GetAllRoles() |
Uygulama için tüm rollerin listesini alır. |
| GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
| GetRolesForUser(String) |
Kullanıcının içinde olduğu rollerin listesini alır. |
| GetType() |
Geçerli örneğin Type alır. (Devralındığı yer: Object) |
| GetUsersInRole(String) |
Belirtilen roldeki kullanıcıların listesini alır. |
| Initialize(String, NameValueCollection) |
yetkilendirme yöneticisi rol sağlayıcısını, ASP.NET uygulamasının yapılandırma dosyasında belirtilen özellik değerleriyle başlatır. Bu yöntem doğrudan kodunuzdan kullanılmak üzere tasarlanmamıştır. |
| IsUserInRole(String, String) |
Belirtilen kullanıcının belirtilen rolde olup olmadığını belirten bir değer alır. |
| MemberwiseClone() |
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
| RemoveUsersFromRoles(String[], String[]) |
Belirtilen kullanıcı adlarını belirtilen rollerden kaldırır. |
| RoleExists(String) |
Belirtilen rol adının authorization-manager ilke deposunda zaten var olup olmadığını belirten bir değer alır. |
| ToString() |
Geçerli nesneyi temsil eden bir dize döndürür. (Devralındığı yer: Object) |