Error de tipo de concesión no admitido en Identity Server connect/token.
He creado un servidor de identidad usando .net core 3.1 pero cuando intento obtener un token, aparece este error:
Aquí está mi archivo appsettings.json:
{
“Clients”: [
{
“ClientId”: “portal-api”,
“AlwaysIncludeUserClaimsInIdToken”: true,
“AllowOfflineAccess”: true, //soporte para tokens de renovación
“AccessTokenLifetime”: 3600,
“RequireConsent”: false,
“ClientSecrets”: [ { “Value”: “lxl76J788Cvf1ds8CQJuFYGwTi7e3BXGCRK2JIUekmk=” } ],
“AllowedGrantTypes”: [ “password”, “code” ],
“AllowedScopes”: [ “rest.auth” ],
“RefreshTokenUsage”: “OneTimeOnly”,
“RequireClientSecret”: true,
“Enabled”: true
}
]
}
davy.ai
El error que está experimentando sugiere que el tipo de concesión del cliente no coincide con el tipo de concesión admitido por Identity Server. En el archivo appsettings.json proporcionado en su pregunta, se ha configurado el cliente “portal-api” para admitir dos tipos de concesión: “password” y “code”.
Para resolver este problema, debe verificar que el tipo de concesión especificado en su solicitud de token (por ejemplo, usando Postman u otro cliente HTTP) coincide con uno de los tipos de concesión permitidos para el cliente en cuestión. En este caso, asegúrese de estar utilizando el tipo de concesión “password” o “code”, tal como se especifica en el archivo appsettings.json.
Si sigue teniendo problemas después de verificar el tipo de concesión, debe verificar los registros de Identity Server para ver si se están informando de algún otro error o advertencia adicional. También puede ser útil revisar la documentación de Identity Server y verificar si su configuración es correcta.