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'de 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 dosyası 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, yetkilendirme yöneticisi deposu kullanan bir ASP.NET uygulaması için rol yönetimi hizmetleri sağlamak üzere ve RolePrincipal sınıfları tarafından Roles 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 kimlik doğrulamasıyla çalışır hem de kimlik doğrulama modlarını oluşturur.
Nesneyi yerel XML dosyası ya da Active Directory veya Active Directory Uygulama Modu (ADAM) sunucusu kullanacak şekilde yapılandırabilirsiniz AuthorizationStoreRoleProvider . 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 kullanabilirsiniz.
msxml://~\App_Data\datafilename.xml
Önemli
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. bir ASP.NET uygulamasında yerel veri dosyası kullanırken güvenliği artırmak için veri dosyasını dizininde App_Data
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ı dizeniz 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, nesne tarafından AuthorizationStoreRoleProvider tetiklenen özel durumlardır. Sağlayıcı, temel alınan Authentication Manager çalışma zamanına dayandığından, nesne Authentication COMException Manager çalışma zamanına AuthorizationStoreRoleProvider bir yöntem çağrısı ilettiğinde bir özel durum oluşturulabilir.
Önemli
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 bir uygulama okuma/yazma izinleri verir. Varsayılan Düşük güven ilkesi dosyası yalnızca uygulama dizininde ASP.NET bir uygulama 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.
Bir Active Directory veya ADAM sunucusu kullanırken, iç AuthorizationStoreRoleProvider nesne kodu COM birlikte çalışma kullandığından ASP.NET uygulama yönetilmeyen kod iznine ihtiyaç duyar.
nesneyi ASP.NET dışında kullanırken AuthorizationStoreRoleProvider , çağıran kodun yönetilmeyen kod iznine sahip olması gerekir.
Oluşturucular
AuthorizationStoreRoleProvider() |
AuthorizationStoreRoleProvider sınıfının yeni bir örneğini başlatır. |
Özellikler
ApplicationName |
Rol bilgilerinin depolandığı ve alındığı yetkilendirme deposu uygulamasının adını alır veya ayarlar. |
CacheRefreshInterval |
İlke deposu verilerinin önbelleğindeki yenilemeler 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
AddUsersToRoles(String[], String[]) |
Belirtilen rollerin her birine belirtilen kullanıcı adlarını ekler. |
CreateRole(String) |
Yetkilendirme yöneticisi ilke deposuna yeni bir rol ekler. |
DeleteRole(String, Boolean) |
Authorization-manager 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() |
Type Geçerli örneğini 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 uygulamanı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 Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
RemoveUsersFromRoles(String[], String[]) |
Belirtilen rollerden belirtilen kullanıcı adlarını 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 dizeyi döndürür. (Devralındığı yer: Object) |