Table of Contents

Class ProfileDataRequestContextExtensions

Namespace
Fdyay.IdentityServer.Services
Assembly
Fdyay.IdentityServer.Core.dll

Helpers for the shapes a profile service implementation keeps needing.

public static class ProfileDataRequestContextExtensions
Inheritance
ProfileDataRequestContextExtensions
Inherited Members

Methods

AddRequestedClaims(ProfileDataRequestContext, IEnumerable<Claim>)

Issues those of claims whose type was actually requested.

public static void AddRequestedClaims(this ProfileDataRequestContext context, IEnumerable<Claim> claims)

Parameters

context ProfileDataRequestContext
claims IEnumerable<Claim>

Remarks

The filtering is the point. A profile service that adds everything it knows puts claims into tokens for clients whose scopes never asked for them, which is how user data ends up somewhere nobody intended. Nothing is issued when no claim types were requested — the same rule the default profile service applies.

FilterClaims(ProfileDataRequestContext, IEnumerable<Claim>)

Returns those of claims whose type was requested, without issuing them.

public static IEnumerable<Claim> FilterClaims(this ProfileDataRequestContext context, IEnumerable<Claim> claims)

Parameters

context ProfileDataRequestContext
claims IEnumerable<Claim>

Returns

IEnumerable<Claim>

LogIssuedClaims(ProfileDataRequestContext, ILogger)

Logs how many claims a profile service issued, for diagnosing a token that looks wrong.

public static void LogIssuedClaims(this ProfileDataRequestContext context, ILogger logger)

Parameters

context ProfileDataRequestContext
logger ILogger

LogProfileRequest(ProfileDataRequestContext, ILogger)

Logs what a profile service was asked for, before it decides what to issue.

public static void LogProfileRequest(this ProfileDataRequestContext context, ILogger logger)

Parameters

context ProfileDataRequestContext
logger ILogger