Claim Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Vertegenwoordigt een claim.
public ref class Claim
public class Claim
[System.Serializable]
public class Claim
type Claim = class
[<System.Serializable>]
type Claim = class
Public Class Claim
- Overname
-
Claim
- Kenmerken
Voorbeelden
In het volgende voorbeeld worden de claims geëxtraheerd die zijn gekoppeld aan de geverifieerde gebruiker die een HTTP-aanvraag uitvoert en schrijft deze in het HTTP-antwoord. De huidige gebruiker wordt gelezen uit de HttpContext as a ClaimsPrincipal en de claims worden gelezen. De claims worden vervolgens naar het HttpResponse object geschreven.
ClaimsPrincipal principal = HttpContext.Current.User as ClaimsPrincipal;
if (null != principal)
{
foreach (Claim claim in principal.Claims)
{
Response.Write("CLAIM TYPE: " + claim.Type + "; CLAIM VALUE: " + claim.Value + "</br>");
}
}
Opmerkingen
Een claim is een verklaring over een onderwerp door een verlener. Claims vertegenwoordigen kenmerken van het onderwerp die nuttig zijn in de context van verificatie- en autorisatiebewerkingen. Onderwerpen en verleners zijn beide entiteiten die deel uitmaken van een identiteitsscenario. Enkele typische voorbeelden van een onderwerp zijn: een gebruiker, een toepassing of service, een apparaat of een computer. Enkele typische voorbeelden van een verlener zijn: het besturingssysteem, een toepassing, een service, een rolprovider, een id-provider of een federatieprovider. Een verlener levert claims door beveiligingstokens uit te geven, meestal via een BEVEILIGINGstokenservice (STS). De verzameling claims die zijn ontvangen van een verlener kan soms worden uitgebreid door onderwerpkenmerken die rechtstreeks bij de resource zijn opgeslagen. Een claim kan worden geëvalueerd om toegangsrechten voor gegevens en andere beveiligde resources te bepalen tijdens het autorisatieproces en kan ook worden gebruikt om verificatiebeslissingen over een onderwerp te nemen of uit te drukken.
Vanaf .NET Framework 4.5 zijn de WIF-klassen (Windows Identity Foundation) die op claims gebaseerde identiteit implementeren, volledig geïntegreerd in .NET Framework. Het claimconcept wordt geïmplementeerd door de Claim klasse.
Hieronder worden belangrijke eigenschappen van de Claim klasse beschreven:
De Type eigenschap is een tekenreeks (meestal een URI) die de semantische informatie over de claim bevat. De eigenschap geeft aan wat de waarde van de claim betekent. Een claim met een claimtype (
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname") vertegenwoordigt bijvoorbeeld de voornaam van GivenName een gebruiker. De waarde van de Type eigenschap kan een van de bekende claimtypen zijn die in de ClaimTypes klasse zijn gedefinieerd, of het kan een willekeurige URI zijn zoals gedefinieerd door de verlener. Een claimtype 'urn:spendinglimit' kan bijvoorbeeld een gebruikerskenmerk vertegenwoordigen dat zinvol is binnen de bedrijfscontext van de verlener.De Value eigenschap bevat de waarde van de claim. Om afhankelijkheden te verminderen en het beheer te vereenvoudigen, wordt in WIF de waarde van een claim alleen weergegeven als een tekenreeks. Voor complexere waardetypen is het raadzaam om standaard XML-schematypen te gebruiken om aan te geven hoe de waarde moet worden geserialiseerd in en gedeserialiseerd vanuit een tekenreeks.
De ValueType eigenschap bevat een tekenreeks die de typegegevens voor de waarde identificeert. Deze eigenschap moet worden gebruikt om inzicht te hebben in de indeling van de waarde en om informatie te verstrekken over het deserialiseren van de waarde. Als voor uw oplossing complexe waardetypen zijn vereist, is het raadzaam om standaard XML-schematypen in de ValueType eigenschap te gebruiken om aan te geven hoe de Value eigenschap moet worden geserialiseerd in en gedeserialiseerd vanuit een tekenreeks.
De Subject eigenschap is een ClaimsIdentity object dat het onderwerp van de claim vertegenwoordigt. Het onderwerp van de claim is de entiteit (meestal de gebruiker die toegang tot een resource aanvraagt) waarover de claim wordt asserteerd. De ClaimsIdentity bevat, onder de eigenschappen, een verzameling claims die de eigenschappen en kenmerken van het onderwerp beschrijven zoals getest door een of meer verleners.
De Issuer eigenschap bevat de naam van de entiteit die de claim heeft uitgegeven. De uitgever van een claim wordt weergegeven in WIF door een tekenreeks die een naam bevat die afkomstig is van een lijst met bekende verleners die worden onderhouden door het register van de uitgevernaam. Het register van de verlenernaam is een exemplaar van een klasse die is afgeleid van de IssuerNameRegistry klasse. Het register van de uitgevernaam koppelt een mnemonic-naam aan het cryptografische materiaal dat nodig is om de handtekeningen van tokens te verifiëren die door de bijbehorende verlener worden geproduceerd. De klasse ConfigurationBasedIssuerNameRegistry, die standaard beschikbaar is bij .NET 4,5, koppelt de nemonische naam voor elke verlener aan het bijbehorende X.509-certificaat. De lijst met bekende verleners wordt doorgaans gebouwd tijdens het opstarten door het register van de verlenernaam. De lijst die door de ConfigurationBasedIssuerNameRegistry lijst wordt gebruikt, wordt opgegeven in het configuratiebestand van de toepassing.
De OriginalIssuer eigenschap bevat de naam van de entiteit die de claim oorspronkelijk heeft uitgegeven. Deze eigenschap is ontworpen om scenario's te vergemakkelijken waarbij een claim meerdere verleners kan passeren voordat deze door de client aan de RP-toepassing wordt gepresenteerd; zoals federatiescenario's. U kunt de OriginalIssuer eigenschap onderzoeken om te bepalen welke entiteit de claim oorspronkelijk heeft uitgegeven. De naam wordt genomen uit de lijst met bekende verleners die worden onderhouden door het register van de uitgevernaam, zoals in het geval van de Issuer eigenschap.
Constructors
| Name | Description |
|---|---|
| Claim(BinaryReader, ClaimsIdentity) |
Initialiseert een nieuw exemplaar van de Claim klasse met de opgegeven lezer en het opgegeven onderwerp. |
| Claim(BinaryReader) |
Initialiseert een exemplaar van Claim met de opgegeven BinaryReader. |
| Claim(Claim, ClaimsIdentity) |
Initialiseert een nieuw exemplaar van de Claim klasse met de opgegeven beveiligingsclaim en het opgegeven onderwerp. |
| Claim(Claim) |
Initialiseert een nieuw exemplaar van de Claim klasse. |
| Claim(String, String, String, String, String, ClaimsIdentity) |
Initialiseert een nieuw exemplaar van de Claim klasse met het opgegeven claimtype, waarde, waardetype, verlener, oorspronkelijke verlener en onderwerp. |
| Claim(String, String, String, String, String) |
Initialiseert een nieuw exemplaar van de Claim klasse met het opgegeven claimtype, de waarde, het waardetype, de uitgever en de oorspronkelijke verlener. |
| Claim(String, String, String, String) |
Initialiseert een nieuw exemplaar van de Claim klasse met het opgegeven claimtype, de waarde, het waardetype en de verlener. |
| Claim(String, String, String) |
Initialiseert een nieuw exemplaar van de Claim klasse met het opgegeven claimtype, de waarde en het waardetype. |
| Claim(String, String) |
Initialiseert een nieuw exemplaar van de Claim klasse met het opgegeven claimtype en de waarde. |
Eigenschappen
| Name | Description |
|---|---|
| CustomSerializationData |
Bevat eventuele aanvullende gegevens die worden geleverd door een afgeleid type. |
| Issuer |
Hiermee haalt u de uitgever van de claim op. |
| OriginalIssuer |
Hiermee haalt u de oorspronkelijke uitgever van de claim op. |
| Properties |
Hiermee haalt u een woordenlijst op die aanvullende eigenschappen bevat die aan deze claim zijn gekoppeld. |
| Subject |
Hiermee wordt het onderwerp van de claim ophaalt. |
| Type |
Hiermee haalt u het claimtype van de claim op. |
| Value |
Hiermee haalt u de waarde van de claim op. |
| ValueType |
Hiermee wordt het waardetype van de claim opgehaald. |
Methoden
| Name | Description |
|---|---|
| Clone() |
Retourneert een nieuw Claim object dat uit dit object is gekopieerd. De nieuwe claim heeft geen onderwerp. |
| Clone(ClaimsIdentity) |
Retourneert een nieuw Claim object dat uit dit object is gekopieerd. Het onderwerp van de nieuwe claim is ingesteld op de opgegeven ClaimsIdentity. |
| Equals(Object) |
Bepaalt of het opgegeven object gelijk is aan het huidige object. (Overgenomen van Object) |
| GetHashCode() |
Fungeert als de standaardhashfunctie. (Overgenomen van Object) |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| ToString() |
Hiermee wordt een tekenreeksweergave van dit Claim object geretourneerd. |
| WriteTo(BinaryWriter, Byte[]) |
Hiermee schrijft u dit Claim naar de schrijver. |
| WriteTo(BinaryWriter) |
Hiermee schrijft u dit Claim naar de schrijver. |