#### [Abblix\.Oidc\.Server](https://www.abblix.com/en/docs/api/abblix-oidc-server 'index')
### [Abblix\.Oidc\.Server\.Features\.UserInfo](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.UserInfo 'Abblix\.Oidc\.Server\.Features\.UserInfo')

## ScopeClaimsProvider Class

Implements the [IScopeClaimsProvider](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.UserInfo.IScopeClaimsProvider 'Abblix\.Oidc\.Server\.Features\.UserInfo\.IScopeClaimsProvider') interface to provide claim names based on requested scopes
and claims\. This class manages the association between scopes and the specific claims they include,
facilitating the retrieval of appropriate claims for given scopes during the authorization process\.

```csharp
public class ScopeClaimsProvider : Abblix.Oidc.Server.Features.UserInfo.IScopeClaimsProvider
```

Inheritance [System\.Object](https://learn.microsoft.com/en-us/dotnet/api/system.object 'System\.Object') → ScopeClaimsProvider

Implements [IScopeClaimsProvider](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.UserInfo.IScopeClaimsProvider 'Abblix\.Oidc\.Server\.Features\.UserInfo\.IScopeClaimsProvider')
### Constructors

## ScopeClaimsProvider\(IScopeManager\) Constructor {#Abblix.Oidc.Server.Features.UserInfo.ScopeClaimsProvider.ScopeClaimsProvider(Abblix.Oidc.Server.Features.ScopeManagement.IScopeManager)}

Implements the [IScopeClaimsProvider](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.UserInfo.IScopeClaimsProvider 'Abblix\.Oidc\.Server\.Features\.UserInfo\.IScopeClaimsProvider') interface to provide claim names based on requested scopes
and claims\. This class manages the association between scopes and the specific claims they include,
facilitating the retrieval of appropriate claims for given scopes during the authorization process\.

```csharp
public ScopeClaimsProvider(Abblix.Oidc.Server.Features.ScopeManagement.IScopeManager scopeManager);
```
#### Parameters

###### `scopeManager` [IScopeManager](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.ScopeManagement.IScopeManager 'Abblix\.Oidc\.Server\.Features\.ScopeManagement\.IScopeManager') {#Abblix.Oidc.Server.Features.UserInfo.ScopeClaimsProvider.ScopeClaimsProvider(Abblix.Oidc.Server.Features.ScopeManagement.IScopeManager).scopeManager}

The scope manager used to look up scope definitions\.
### Properties

## ScopeClaimsProvider\.ClaimsSupported Property {#Abblix.Oidc.Server.Features.UserInfo.ScopeClaimsProvider.ClaimsSupported}

A collection of all the claims that can be provided by this provider\.

```csharp
public System.Collections.Generic.IEnumerable<string> ClaimsSupported { get; }
```

Implements [ClaimsSupported](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.UserInfo.IScopeClaimsProvider#Abblix.Oidc.Server.Features.UserInfo.IScopeClaimsProvider.ClaimsSupported 'Abblix\.Oidc\.Server\.Features\.UserInfo\.IScopeClaimsProvider\.ClaimsSupported')

#### Property Value
[System\.Collections\.Generic\.IEnumerable&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ienumerable-1 'System\.Collections\.Generic\.IEnumerable\`1')[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ienumerable-1 'System\.Collections\.Generic\.IEnumerable\`1')

## ScopeClaimsProvider\.ScopesSupported Property {#Abblix.Oidc.Server.Features.UserInfo.ScopeClaimsProvider.ScopesSupported}

A collection of all the scopes supported by this provider\.

```csharp
public System.Collections.Generic.IEnumerable<string> ScopesSupported { get; }
```

Implements [ScopesSupported](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.UserInfo.IScopeClaimsProvider#Abblix.Oidc.Server.Features.UserInfo.IScopeClaimsProvider.ScopesSupported 'Abblix\.Oidc\.Server\.Features\.UserInfo\.IScopeClaimsProvider\.ScopesSupported')

#### Property Value
[System\.Collections\.Generic\.IEnumerable&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ienumerable-1 'System\.Collections\.Generic\.IEnumerable\`1')[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ienumerable-1 'System\.Collections\.Generic\.IEnumerable\`1')
### Methods

## ScopeClaimsProvider\.GetRequestedClaims\(IEnumerable\<string\>, IEnumerable\<string\>\) Method {#Abblix.Oidc.Server.Features.UserInfo.ScopeClaimsProvider.GetRequestedClaims(System.Collections.Generic.IEnumerable_string_,System.Collections.Generic.IEnumerable_string_)}

Retrieves the specific claims associated with the requested scopes and any additional requested claims\.

```csharp
public System.Collections.Generic.IEnumerable<string> GetRequestedClaims(System.Collections.Generic.IEnumerable<string> scopes, System.Collections.Generic.IEnumerable<string>? requestedClaims);
```
#### Parameters

###### `scopes` [System\.Collections\.Generic\.IEnumerable&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ienumerable-1 'System\.Collections\.Generic\.IEnumerable\`1')[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ienumerable-1 'System\.Collections\.Generic\.IEnumerable\`1') {#Abblix.Oidc.Server.Features.UserInfo.ScopeClaimsProvider.GetRequestedClaims(System.Collections.Generic.IEnumerable_string_,System.Collections.Generic.IEnumerable_string_).scopes}

The collection of scopes for which claims need to be provided\.

###### `requestedClaims` [System\.Collections\.Generic\.IEnumerable&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ienumerable-1 'System\.Collections\.Generic\.IEnumerable\`1')[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ienumerable-1 'System\.Collections\.Generic\.IEnumerable\`1') {#Abblix.Oidc.Server.Features.UserInfo.ScopeClaimsProvider.GetRequestedClaims(System.Collections.Generic.IEnumerable_string_,System.Collections.Generic.IEnumerable_string_).requestedClaims}

Additional specific claims requested outside of the scope requests\.

Implements [GetRequestedClaims\(IEnumerable&lt;string&gt;, IEnumerable&lt;string&gt;\)](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.UserInfo.IScopeClaimsProvider#Abblix.Oidc.Server.Features.UserInfo.IScopeClaimsProvider.GetRequestedClaims(System.Collections.Generic.IEnumerable_string_,System.Collections.Generic.IEnumerable_string_) 'Abblix\.Oidc\.Server\.Features\.UserInfo\.IScopeClaimsProvider\.GetRequestedClaims\(System\.Collections\.Generic\.IEnumerable\<string\>, System\.Collections\.Generic\.IEnumerable\<string\>\)')

#### Returns
[System\.Collections\.Generic\.IEnumerable&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ienumerable-1 'System\.Collections\.Generic\.IEnumerable\`1')[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ienumerable-1 'System\.Collections\.Generic\.IEnumerable\`1')  
A collection of claim names that are associated with the requested scopes and additional claims\.
