SqlRoleProvider.ApplicationName Tulajdonság
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Lekéri vagy beállítja annak az alkalmazásnak a nevét, amelynek a szerepköradatait tárolni és lekérni szeretné.
public:
virtual property System::String ^ ApplicationName { System::String ^ get(); void set(System::String ^ value); };
public override string ApplicationName { get; set; }
member this.ApplicationName : string with get, set
Public Overrides Property ApplicationName As String
Tulajdonság értéke
Annak az alkalmazásnak a neve, amelynek a szerepköradatait tárolni és lekérni szeretné. Az alapértelmezett érték az ApplicationPath aktuális Requesttulajdonság értéke.
Kivételek
A ApplicationName tulajdonság beállítására olyan hívó tett kísérletet, amely nem rendelkezik High ASP.NET üzemeltetési engedéllyel.
Kísérlet történt a ApplicationName 256 karakternél hosszabb sztringre való beállításra.
Példák
Az alábbi példa egy ASP.NET-alkalmazás Web.config fájljának roleManager szakaszának system.web elemét mutatja be. Megadja az alkalmazás SqlRoleProvider példányát, és a tulajdonságot a ApplicationName következőre MyApplicationállítja be: .
<roleManager defaultProvider="SqlProvider"
enabled="true"
cacheRolesInCookie="true"
cookieName=".ASPROLES"
cookieTimeout="30"
cookiePath="/"
cookieRequireSSL="false"
cookieSlidingExpiration="true"
cookieProtection="All" >
<providers>
<add
name="SqlProvider"
type="System.Web.Security.SqlRoleProvider"
connectionStringName="SqlServices"
applicationName="MyApplication" />
</providers>
</roleManager>
Megjegyzések
A ApplicationName felhasználók és szerepkörök SqlRoleProvider különböző alkalmazásokkal való társítására szolgál. Ez lehetővé teszi, hogy több alkalmazás ugyanazt az adatbázist használja felhasználói és szerepkör-információk tárolására anélkül, hogy ütközések lépnek fel az ismétlődő felhasználónevek vagy szerepkörnevek között. Több ASP.NET alkalmazás is használhatja ugyanazt az adatbázist a ApplicationName tulajdonságban megadott értékkel. A ApplicationName tulajdonság beállítható programozott módon, vagy deklaratív módon is beállítható a webalkalmazás konfigurációs fájljában az applicationName attribútum használatával.
Ha a applicationName webalkalmazás konfigurációs fájljában nincs megadva érték az attribútumhoz, akkor a rendszer az HttpRequest.ApplicationPath aktuális HttpContext.Request objektum tulajdonságértékét használja.
Figyelmeztetés
Mivel egy alapértelmezett szerepkör-szolgáltatói példányt használ az objektum által HttpApplication kiszolgált összes kéréshez, egyszerre több kérés is végrehajtható, és megkísérli beállítani a ApplicationName tulajdonság értékét. A ApplicationName tulajdonság nem biztonságos több írás esetén, és a tulajdonság értékének ApplicationName módosítása váratlan viselkedést eredményezhet egy alkalmazás több felhasználója számára. Javasoljuk, hogy ne írjon olyan kódot, amely lehetővé teszi a felhasználók számára a ApplicationName tulajdonság beállítását, hacsak nem szükséges. Példa egy olyan alkalmazásra, ahol szükség lehet a ApplicationName tulajdonság beállítására, egy olyan felügyeleti alkalmazás, amely több alkalmazás szerepköradatait kezeli. Az ilyen alkalmazásnak nem webalkalmazásnak, hanem egy egyfelhasználós alkalmazásnak kell lennie.