Azure función consumidor recibe 401 al usar la cadena de conexión

0

Pregunta

Yo soy muy nuevo en Azure mecanismos y me he quedado prendado de este problema.

Tengo una azure función que se supone que se activa por eventos publicados en un evento de concentradores. Me puse el sas cadena de conexión obtenido en el caso de concentrador de azure portal de la página (con la opción "administrar" grant option) y se utiliza la misma clave en el EventHubTrigger anotación (es una Java de función 11)

En el primero tengo un error que indica que la función IP fue impedido de conexión, error me deshice fuera de control "permitir de confianza de servicios de Microsoft" en la configuración de red del hub de eventos.

Luego conseguí un 401 acceso no autorizado.

La eliminación de todas las IPs de las restricciones desde el hub de eventos (lo que es público), se empieza a escuchar y procesamiento de los eventos empujado en el hub de eventos.

Obviamente que me gustaría poner esas restricciones de vuelta, pero el 401 excepción no se detiene.

Lo que me estoy perdiendo?

Edición (Añadir el código de la función):

public class Function {
    @FunctionName("feed-collector")
    public void run(
            @EventHubTrigger(name = "collect", consumerGroup = "$Default", connection = "AzureEventHubConnectionString", eventHubName = "feed-ordini", cardinality = Cardinality.MANY)
            String message,
            final ExecutionContext context
    ) {
        context.getLogger().info(message);
    }
}

AzureEventHubConnectionString se define en la configuración de la aplicación y su valor está en el formato

Endpoint=sb://[hub-host].servicebus.windows.net/;SharedAccessKeyName=[SasPolicyName];SharedAccessKey=[primarykey]

azure azure-eventhub azure-functions
2021-11-23 21:26:35
2
0

Según la documentación,

Los derechos previstos por la regla de política puede ser una combinación de:

  • Enviar – le Da el derecho a enviar mensajes a la entidad
  • Escuchar – le Da el derecho a escuchar o recibir a la entidad
  • Administrar – le Da el derecho a administrar la topología del espacio de nombres, incluyendo la creación y supresión de las entidades

En tu caso, ya que su función es la de escuchar en los eventos de la eventhub, usted debe utilizar un escuchar política de SAS.

2021-11-24 01:15:05
0

SAS Política da la granular ámbito de aplicación sólo en el nivel de las entidades y no en el nivel de consumo.

Significa que los privilegios definidos en el nivel de espacio de nombres o el hub de eventos de la instancia o nivel de tema será aplicado para el grupo de consumo de la entidad.

Me puse el sas cadena de conexión obtenido en el caso de concentrador de azure portal de la página (con la opción "administrar" de la subvención opción)

Evento de centros de token de autenticación requiere que sus clientes tienen de gestionar los derechos o la escucha de los privilegios asignados a su Caso Concentradores de espacio de nombres o el hub de eventos instancia o tema.

Para el Código Java en la generación de una firma SAS (token) de una política, consulte aquí.

Para leer la información detallada sobre las reglas de la política como Enviar, Escuchar y Administrar, límite de las reglas que se aplican para el espacio de nombres o de la política de la entidad y las mejores prácticas en el uso de SAS, por favor, eche un vistazo a esta documentación de Microsoft.

2021-11-24 03:18:35

Eché un vistazo a la documentación, pero no encontraba respuestas. ¿Cómo puedo generar el SAS símbolo de código Java si la función no incluso desencadenar? E incluso si puedo generar el SAS token desde fuera de la función, donde puedo usarlo?
Esotopo21

podría por favor proporcionar la función de código de cómo se han escrito para que se desencadene el evento.
HariKrishnaRajoli-MT

He editado la pregunta con el código y la cadena de conexión que estoy usando
Esotopo21

En otros idiomas

Esta página está en otros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Slovenský
..................................................................................................................