ClaimsAuthenticationManager Třída

Definice

Definuje základní implementaci správce ověřování deklarací identity. Správce ověřování deklarací identity poskytuje místo v kanálu zpracování deklarací identity pro použití logiky zpracování (filtrování, ověřování, rozšíření) pro kolekci deklarací identity v příchozím objektu zabezpečení před spuštěním kódu aplikace.

public ref class ClaimsAuthenticationManager : System::IdentityModel::Configuration::ICustomIdentityConfiguration
public class ClaimsAuthenticationManager : System.IdentityModel.Configuration.ICustomIdentityConfiguration
type ClaimsAuthenticationManager = class
    interface ICustomIdentityConfiguration
Public Class ClaimsAuthenticationManager
Implements ICustomIdentityConfiguration
Dědičnost
ClaimsAuthenticationManager
Implementuje

Příklady

Následující kód ukazuje jednoduchý správce ověřování deklarací identity, který přidá deklaraci role do příchozího objektu zabezpečení, aniž by provedl jakoukoli kontrolu příchozích deklarací identity.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using System.Security.Claims;

namespace MyClaimsAuthenticationManager
{
    class SimpleClaimsAuthenticatonManager : ClaimsAuthenticationManager
    {
        public override ClaimsPrincipal Authenticate(string resourceName, ClaimsPrincipal incomingPrincipal)
        {
            if (incomingPrincipal != null && incomingPrincipal.Identity.IsAuthenticated)
            {
                ((ClaimsIdentity)incomingPrincipal.Identity).AddClaim(new Claim(ClaimTypes.Role, "User"));
            }
            return incomingPrincipal; 
        }
    }
}

Následující xml ukazuje <claimsAuthenticationManager> element.

<system.identityModel>
  <identityConfiguration>
    <claimsAuthenticationManager type="MyClaimsAuthenticationManager.SimpleClaimsAuthenticatonManager, MyClaimsAuthenticationManager" />

    ...

  </identityConfiguration>
</system.identityModel>

Poznámky

Správce ověřování deklarací identity poskytuje bod rozšiřitelnosti v kanálu zpracování deklarací identity aplikace, který můžete použít k ověření, filtrování, úpravě, příchozím deklaracím nebo vkládání nových deklarací do sady deklarací identity před ClaimsPrincipal spuštěním kódu aplikace RP. Můžete dokonce vrátit vlastní implementaci ClaimsPrincipal , pokud ji vaše aplikace rp vyžaduje. Výchozí implementace poskytovaná ClaimsAuthenticationManager třídou vrátí deklarace identity v ClaimsPrincipal nezměněném stavu. Můžete však odvodit z této třídy a přepsat metodu Authenticate pro úpravu deklarací identity v objektu ClaimsPrincipal (nebo k vrácení vlastní ClaimsPrincipal).

Typickým důvodem pro vytvoření vlastního správce ověřování deklarací identity je přidání, odebrání nebo transformace deklarací na základě informací, které znají nebo jsou možná lépe udržovány aplikací rp. Například historie nákupů zákazníků v aplikaci nákupního košíku může být uložena v datovém základu spravovaném aplikací rp a následně přidána do objektu deklarací identity vráceného správcem ověřování deklarací na základě hodnoty deklarace identity nalezené v příchozím objektu zabezpečení.

Aplikaci můžete nakonfigurovat tak, aby používala ClaimsAuthenticationManager programově pomocí IdentityConfiguration třídy nebo v konfiguraci prostřednictvím <elementu claimsAuthenticationManager> (což je podřízený prvek <elementu identityConfiguration> ). Můžete přepsat metodu LoadCustomConfiguration , která poskytuje zpracování pro vlastní podřízené prvky elementu <claimsAuthenticationManager> , pomocí kterých lze vlastní správce nakonfigurovat. Základní implementace ClaimsAuthenticationManager nezpracuje žádné podřízené prvky.

Konfigurace aplikace tak, aby používala správce ověřování deklarací identity, zajišťuje, že bude vyvolána službou Windows Identity Foundation (WIF) z kanálu požadavku.

Konstruktory

Name Description
ClaimsAuthenticationManager()

Inicializuje novou instanci ClaimsAuthenticationManager třídy.

Metody

Name Description
Authenticate(String, ClaimsPrincipal)

Při přepsání v odvozené třídě vrátí ClaimsPrincipal objekt konzistentní s požadavky aplikace RP. Výchozí implementace neupravuje příchozí ClaimsPrincipal.

Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetType()

Získá Type aktuální instance.

(Zděděno od Object)
LoadCustomConfiguration(XmlNodeList)

Při přepsání v odvozené třídě načte vlastní konfiguraci z XML.

MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro