diff --git a/src/OpenIddict.Client.WebIntegration/OpenIddictClientWebIntegrationHandlers.cs b/src/OpenIddict.Client.WebIntegration/OpenIddictClientWebIntegrationHandlers.cs index 1a0db9130..45d1cfd3c 100644 --- a/src/OpenIddict.Client.WebIntegration/OpenIddictClientWebIntegrationHandlers.cs +++ b/src/OpenIddict.Client.WebIntegration/OpenIddictClientWebIntegrationHandlers.cs @@ -666,6 +666,13 @@ public ValueTask HandleAsync(ProcessAuthenticationContext context) context.TokenRequest.UserCode = code; } + // osu! requires the "public" scope for client credentials grant, as tokens without scopes are invalid. + else if (context.GrantType is GrantTypes.ClientCredentials && + context.Registration.ProviderType is ProviderTypes.Osu) + { + context.TokenRequest.Scope = "public"; + } + // VK ID requires attaching a non-standard "device_id" parameter to all token requests. // // This parameter is either resolved from the authorization response (for the authorization diff --git a/src/OpenIddict.Client.WebIntegration/OpenIddictClientWebIntegrationProviders.xml b/src/OpenIddict.Client.WebIntegration/OpenIddictClientWebIntegrationProviders.xml index 2a44dd9cc..3010a6488 100644 --- a/src/OpenIddict.Client.WebIntegration/OpenIddictClientWebIntegrationProviders.xml +++ b/src/OpenIddict.Client.WebIntegration/OpenIddictClientWebIntegrationProviders.xml @@ -1747,6 +1747,35 @@ ConfigurationEndpoint="https://api.orange.com/openidconnect/fr/v1/.well-known/openid-configuration" /> + + + + + + + + + + + + + + + + + + +