Azure funcția de consum devine 401 atunci când se utilizează șirul de conectare

0

Problema

Eu sunt foarte nou la Azure mecanisme și m-am blocat pe această problemă.

Am o azure funcție care ar trebui să fie declanșate de evenimente publicate pe un eveniment hub. Am setat sas șir de conexiune obținute în azure event hub pagină de portal (cu "gestiona" opțiune de finanțare) și a folosit aceeași cheie în EventHubTrigger adnotare (este un Java 11 funcția)

La început am primit un mesaj de eroare care să ateste că funcția IP a fost împiedicat de la conexiune, eroare am scapat pe de verificare "permite de încredere Microsoft service" în setările de rețea ale evenimentului hub.

Apoi am primit un 401 accesul neautorizat.

Eliminarea tuturor IPs restricții la event hub (făcându-l public) începe să asculte și prelucrarea evenimentelor împins în cazul hub.

Evident, aș dori să pun aceste restricții spate dar 401 excepție nu se va opri.

Ce sunt eu lipsesc?

Edit (funcția Adăugarea de cod):

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 este definit în setările aplicației și valoarea sa este în format

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

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

Conform documentației,

De drepturile prevăzute de regula de politică poate fi o combinație de:

  • Trimite – Dă dreptul de a trimite mesaje de la entitatea
  • Ascultă – Dă dreptul de a asculta sau de a primi pentru entitate
  • Gestionați – vă Oferă dreptul de a gestiona topologia spațiu de nume, inclusiv crearea și ștergerea de entități

În cazul tău, deoarece funcția ta este de a asculta pe evenimente din eventhub, ar trebui să utilizați o asculta politica SAS.

2021-11-24 01:15:05
0

SAS Politica dă granule de aplicare numai la nivel de entitate, și nu la nivel de consum.

Aceasta înseamnă privilegiile definite în namespace nivel sau eveniment hub instanță sau nivel subiect va fi aplicat consumatorilor grup de acea entitate.

Am setat sas șir de conexiune obținute în azure event hub pagină de portal (cu "gestiona" opțiune de finanțare)

Eveniment hub token de autentificare a cere clienților săi să fie gestiona drepturile sau asculta privilegiile atribuite acesteia Eveniment Hub-uri nume sau un eveniment hub instanță sau de subiect.

Pentru Cod Java în generarea de semnătură (SAS token) la o politică, se referă aici.

Pentru a citi informații detaliate despre politica de reguli, cum ar fi Expedia, de a Asculta și de a Gestiona, limita de reguli aplicate la nume sau o entitate politică și cele mai bune practici atunci când se utilizează SAS, aruncați o privire la documentația Microsoft.

2021-11-24 03:18:35

Am avut o privire la documentația dar nu am gasit nici un răspuns. Cum pot genera SAS simbol de cod Java dacă funcția nu se va declanșa chiar? Și chiar dacă aș genera SAS semn din afara funcție, în cazul în care trebuie să-l folosească?
Esotopo21

ar putea vă rugăm să furnizați codul funcție de cât ai scris pentru declanșarea evenimentului.
HariKrishnaRajoli-MT

Am editat întrebarea cu codul și șirul de conexiune folosesc
Esotopo21

În alte limbi

Această pagină este în alte limbi

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