OpenAuth.Net/OpenAuth.Identity/Quickstart/Extensions.cs
2020-10-22 14:59:36 +08:00

26 lines
783 B
C#

using System.Threading.Tasks;
using IdentityServer4.Stores;
namespace OpenAuth.IdentityServer.Quickstart
{
public static class Extensions
{
/// <summary>
/// Determines whether the client is configured to use PKCE.
/// </summary>
/// <param name="store">The store.</param>
/// <param name="client_id">The client identifier.</param>
/// <returns></returns>
public static async Task<bool> IsPkceClientAsync(this IClientStore store, string client_id)
{
if (!string.IsNullOrWhiteSpace(client_id))
{
var client = await store.FindEnabledClientByIdAsync(client_id);
return client?.RequirePkce == true;
}
return false;
}
}
}