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

## ResourceDefinition Class

Represents a resource with associated scopes, defining the permissions and access levels within an application\.
This record is typically used to configure and enforce authorization policies based on resource identifiers
and their corresponding scopes\.

```csharp
public record ResourceDefinition : System.IEquatable<Abblix.Oidc.Server.Common.Constants.ResourceDefinition>
```

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

Implements [System\.IEquatable&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.iequatable-1 'System\.IEquatable\`1')[ResourceDefinition](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Common.Constants.ResourceDefinition 'Abblix\.Oidc\.Server\.Common\.Constants\.ResourceDefinition')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.iequatable-1 'System\.IEquatable\`1')
### Constructors

## ResourceDefinition\(Uri, ScopeDefinition\[\]\) Constructor {#Abblix.Oidc.Server.Common.Constants.ResourceDefinition.ResourceDefinition(System.Uri,Abblix.Oidc.Server.Common.Constants.ScopeDefinition[])}

Represents a resource with associated scopes, defining the permissions and access levels within an application\.
This record is typically used to configure and enforce authorization policies based on resource identifiers
and their corresponding scopes\.

```csharp
public ResourceDefinition(System.Uri Resource, params Abblix.Oidc.Server.Common.Constants.ScopeDefinition[] Scopes);
```
#### Parameters

###### `Resource` [System\.Uri](https://learn.microsoft.com/en-us/dotnet/api/system.uri 'System\.Uri') {#Abblix.Oidc.Server.Common.Constants.ResourceDefinition.ResourceDefinition(System.Uri,Abblix.Oidc.Server.Common.Constants.ScopeDefinition[]).Resource}

The identifier for the resource, often a unique name or URL representing the resource\.

###### `Scopes` [ScopeDefinition](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Common.Constants.ScopeDefinition 'Abblix\.Oidc\.Server\.Common\.Constants\.ScopeDefinition')[\[\]](https://learn.microsoft.com/en-us/dotnet/api/system.array 'System\.Array') {#Abblix.Oidc.Server.Common.Constants.ResourceDefinition.ResourceDefinition(System.Uri,Abblix.Oidc.Server.Common.Constants.ScopeDefinition[]).Scopes}

A variable number of scope definitions associated with the resource\. Each scope definition
            specifies a scope and its related claims, detailing the access levels and permissions granted\.
### Properties

## ResourceDefinition\.Resource Property {#Abblix.Oidc.Server.Common.Constants.ResourceDefinition.Resource}

The identifier for the resource, often a unique name or URL representing the resource\.

```csharp
public System.Uri Resource { get; init; }
```

#### Property Value
[System\.Uri](https://learn.microsoft.com/en-us/dotnet/api/system.uri 'System\.Uri')

## ResourceDefinition\.Scopes Property {#Abblix.Oidc.Server.Common.Constants.ResourceDefinition.Scopes}

A variable number of scope definitions associated with the resource\. Each scope definition
            specifies a scope and its related claims, detailing the access levels and permissions granted\.

```csharp
public Abblix.Oidc.Server.Common.Constants.ScopeDefinition[] Scopes { get; init; }
```

#### Property Value
[ScopeDefinition](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Common.Constants.ScopeDefinition 'Abblix\.Oidc\.Server\.Common\.Constants\.ScopeDefinition')[\[\]](https://learn.microsoft.com/en-us/dotnet/api/system.array 'System\.Array')
