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.

La prueba de las funciones duraderas de Azure en el entorno local muestra un error relacionado con los controladores de autenticación.

He estado probando las Durable Functions en .NET, siguiendo esta guía básica: https://learn.microsoft.com/en-us/azure/azure-functions/durable/durable-functions-create-first-csharp?pivots=code-editor-vscode

Lo tengo todo configurado y la función parece estar ejecutándose normalmente (obtengo resultados), pero cuando intento consultar el estado de la función, obtengo el siguiente error:

Se ha producido un error del host no controlado.
[2021-12-14T11:03:44.595Z] Microsoft.AspNetCore.Authentication.Core: No hay controladores de autenticación registrados. ¿Olvidó llamar a AddAuthentication().AddSomeAuthHandler?.

He estado buscando posibles soluciones para esto, pero no parece encontrar una solución que funcione para mí. Supongo que un ArmToken está relacionado con los recursos de Azure, pero en la guía no mencionan la necesidad de configurarlo. ¿Me estoy perdiendo algo?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    El mensaje de error sugiere que existe un problema con la configuración de autenticación en la función duradera. Parece que la función requiere un controlador de autenticación que se registre utilizando el método AddAuthentication. El mensaje de error menciona específicamente un “ArmToken”, que probablemente esté relacionado con la autenticación de token del Administrador de Recursos de Azure (ARM).

    Para solucionar este problema, intenta agregar el controlador de autenticación requerido al método ConfigureServices en el archivo Startup.cs de tu función. Por ejemplo:

    public void ConfigureServices(IServiceCollection services)
    {
        // ...
        services.AddAuthentication()
            .Add[SomeAuthHandler]("ArmToken", options =>
            {
                // configure las opciones de autenticación
            });
        // ...
    }
    

    Reemplaza “[SomeAuthHandler]” con el nombre del controlador de autenticación que estás utilizando para la autenticación de token ARM. También necesitarás configurar las opciones de autenticación según sea necesario.

    Si no estás seguro de qué controlador de autenticación utilizar o cómo configurarlo, consulta la documentación o los ejemplos del método de autenticación que estés utilizando.

    Una vez que hayas agregado el controlador de autenticación, reconstruye y vuelve a implementar la función, y luego intenta consultar el estado nuevamente. Con suerte, esto solucionará el problema de autenticación y te permitirá consultar el estado de la función duradera con éxito.

Comments are closed.