thalos-dal/src/Thalos.DAL/Providers/InMemory/InMemoryPermissionDataProvider.cs
2026-02-22 17:14:05 -06:00

24 lines
795 B
C#

using Thalos.DAL.Contracts;
namespace Thalos.DAL.Providers.InMemory;
/// <summary>
/// In-memory provider for identity permission lookup contracts.
/// </summary>
public sealed class InMemoryPermissionDataProvider : IPermissionDataProvider
{
/// <inheritdoc />
public Task<IReadOnlyList<IdentityPermissionRecord>> ReadPermissionsAsync(
IdentityPermissionSetLookupRequest request,
CancellationToken cancellationToken = default)
{
IReadOnlyList<IdentityPermissionRecord> records =
[
new IdentityPermissionRecord(request.Envelope, "identity.token.issue", "identity.admin"),
new IdentityPermissionRecord(request.Envelope, "identity.policy.evaluate", "identity.admin")
];
return Task.FromResult(records);
}
}