ClaimsPrincipalPermission.Demand Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Zkontroluje, jestli je aktuální objekt zabezpečení autorizovaný pro páry prostředků a akce přidružené k aktuální instanci.
public:
virtual void Demand();
public void Demand ();
abstract member Demand : unit -> unit
override this.Demand : unit -> unit
Public Sub Demand ()
Implementuje
Výjimky
Aktuální objekt zabezpečení není možné přiřadit z ClaimsPrincipal.
-nebo-
Není nakonfigurovaná žádná ClaimsAuthorizationManager .
Kontrola autorizace se nezdařila.
Příklady
Následující příklad ukazuje, jak chránit prostředek pomocí Demand metody . Je vyvolán nakonfigurovaný správce autorizace deklarací identity, který vyhodnotí aktuální objekt zabezpečení vůči zadanému prostředku a akci. Pokud aktuální objekt zabezpečení není autorizovaný pro zadanou akci u zadaného prostředku, SecurityException vyvolá se příkaz . V opačném případě bude provádění pokračovat.
//
// Method 2. Programmatic check using the permission class
// Follows model found at http://msdn.microsoft.com/library/system.security.permissions.principalpermission.aspx
//
ClaimsPrincipalPermission cpp = new ClaimsPrincipalPermission("resource", "action");
cpp.Demand();
Poznámky
Aktuální objekt zabezpečení musí být autorizovaný pro všechny páry akce prostředků přidružené k této instanci, jinak dojde k výjimce SecurityException .
Ačkoli konstruktor přijímá pouze jeden prostředek a akci, ClaimsPrincipalPermission objekty lze kombinovat prostřednictvím Union metod a Intersect . Oprávnění vytvořená těmito metodami mohou obsahovat několik párů akce prostředku.
Metoda Demand vyvolá metodu ClaimsAuthorizationManager.CheckAccess nakonfigurovaného správce autorizace deklarací identity, která AuthorizationContext se skládá z aktivního objektu zabezpečení (CurrentPrincipal), prostředku a akce pro každý z párů prostředků a akcí obsažených v oprávnění. Demand Aby byl objekt úspěšný, musí být aktivní objekt zabezpečení autorizovaný pro všechny páry prostředků a akcí, které jsou obsaženy v oprávnění.