es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

ITfoxtec Identity.Saml2.MvcCore — SE HA SUPERADO EL LÍMITE DE LONGITUD DE LA CLAVE DE FORMULARIO DE ERROR SAML DE 2048

Estoy utilizando ITfoxtec Identity.Saml2.MvcCore para .net core v3.1 para iniciar sesión único utilizando Ping Identity.

Error SAML: Se superó el límite de longitud de clave del formulario 2048. en Microsoft.AspNetCore.WebUtilities.FormPipeReader.ThrowKeyTooLargeException()
en Microsoft.AspNetCore.WebUtilities.FormPipeReader.ParseValuesSlow(ReadOnlySequence1& buffer, KeyValueAccumulator& accumulator, Boolean isFinalBlock)
en Microsoft.AspNetCore.WebUtilities.FormPipeReader.ParseFormValues(ReadOnlySequence
1& buffer, KeyValueAccumulator& accumulator, Boolean isFinalBlock)
en Microsoft.AspNetCore.WebUtilities.FormPipeReader.ReadFormAsync(CancellationToken cancellationToken)
en Microsoft.AspNetCore.Http.Features.FormFeature.InnerReadFormAsync(CancellationToken cancellationToken)
en Microsoft.AspNetCore.Http.Features.FormFeature.ReadForm()
en Microsoft.AspNetCore.Http.DefaultHttpRequest.get_Form()
en ITfoxtec.Identity.Saml2.MvcCore.HttpRequestExtensions.ToGenericHttpRequest(HttpRequest request)
en Nbc.Score.Remotes.Web.Controllers.HomeController.AssertionConsumerService()

Método fallido: ITfoxtec.Identity.Saml2.MvcCore.HttpRequestExtensions.ToGenericHttpRequest

Tags:  , ,

Answer

  1. Avatar for davy.ai

    El mensaje de error SAML “Form key length limit 2048 exceeded” sugiere que se ha excedido la longitud máxima de las claves de formulario. Este error ocurre cuando los datos enviados con un formulario exceden la longitud permitida.

    En este caso, el método que ha fallado es “ITfoxtec.Identity.Saml2.MvcCore.HttpRequestExtensions.ToGenericHttpRequest”, que es un método que convierte una solicitud HTTP en una solicitud HTTP genérica. Esto sugiere que el error puede estar relacionado con los datos que se envían durante el proceso de inicio de sesión único, que utiliza Ping Identity.

    Para resolver este problema, puedes intentar aumentar la longitud máxima de las claves de formulario. En ASP.NET Core, esto se puede hacer mediante la actualización de la clase FormOptions en el archivo Startup.cs de la siguiente manera:

    services.Configure(options =>
    {
    options.ValueLengthLimit = int.MaxValue;
    options.MultipartBodyLengthLimit = int.MaxValue;
    options.MemoryBufferThreshold = int.MaxValue;
    });

    Esto aumentará la longitud máxima de los valores de formulario al valor máximo de un entero. Si esto no resuelve el problema, es posible que debas verificar la configuración de tu instalación de Ping Identity para asegurarte de que los datos enviados cumplan con la longitud permitida.

Comments are closed.