2016-11-16 1 views
3

Ich habe die Azure Active Directory-Authentifizierung zu meiner Funktions-App hinzugefügt, aber sobald ich "Aktion, wenn Anfrage nicht authentifiziert wird" auf "Anmeldung mit Azure Active Directory" eingestellt habe Entwicklungsschnittstelle für die Funktion App liefert diese Nachricht:Azure-Funktion App: Authentifizierung bricht Entwicklungsportal

Fehler: Wir sind nicht in der Lage, Ihre Funktion App zu erreichen. Ihre App hat möglicherweise ein vorübergehendes Problem oder startet möglicherweise nicht. Sie können Protokolle überprüfen oder es in ein paar Minuten erneut versuchen. Session ID: 23a5880ec94743f5a9d3ac705515b294 Zeitstempel: 2016-11-16T08: 36: 54.242Z

Vermutlich Hinzufügen die Authentifizierungsanforderung bricht in irgendeiner Weise auf die Funktion App zugreifen ... obwohl ich in der Lage bin, Änderungen vorzunehmen in dem Code Editor, und sie werden wirksam, ich sehe keine Updates in der Protokollanzeige: keine Compilation Ausgabenachrichten, zum Beispiel.

Kennt jemand ein Workaround dafür?

Bisher habe ich versucht, einfach die Option auth verlassen auf „anonyme Anfragen zulassen (keine Aktion)“ und mit diesem folgenden Code:

public static async Task<HttpResponseMessage> Run(HttpRequestMessage req, TraceWriter log) 
{ 
    log.Info("C# HTTP trigger function processed a request."); 

    var user = "Anonymous"; 
    var claimsPrincipal = Thread.CurrentPrincipal as ClaimsPrincipal; 
    if (claimsPrincipal != null && claimsPrincipal.Identity.IsAuthenticated) 
    { 
     user = claimsPrincipal.Identity.Name; 
     log.Info($"Hello {user}");  
    }  

    return req.CreateResponse(HttpStatusCode.OK, "Hello " + user);   
} 

Dies ist jedoch (zu Recht) verweist nicht auf dem der Authentifizierungsanbieter ... Ich würde es vorziehen, wenn die App sich um all das kümmert, aber wenn das bedeutet, dass ich keine Kompilierungsnachrichten/Protokollnachrichten sehen kann, macht es ziemlich schwer zu sehen, was vor sich geht.

Antwort

4

Nathan,

Leider ist dies eine Einschränkung im Moment ist und wir Tracking es hier: https://github.com/projectkudu/AzureFunctionsPortal/issues/794

Ihren Ansatz, anonym zu ermöglichen und in der Funktion zu validieren ist, was wir im Moment empfehlen . Um Ihre Problemumgehung zu erweitern, können Sie den folgenden Code hinzufügen, um eine Login-Weiterleitung zu initiieren, wenn Sie einen anonymen Benutzer erkennen (der folgende Code geht davon aus, dass Sie AAD verwenden).

Wir verstehen, dass nicht ideal ist und schätzen Sie Ihre Geduld, während wir arbeiten, um dies zu verbessern.

Danke!

+0

Hallo Fabio, danke für deine Antwort, das macht den Trick. – Nathan

+0

Ich habe die Umleitung funktioniert, aber sind auf diese URL weitergeleitet: https://myfunction.azurewebsites.net/.auth/login/aad/callback, wie hast du das gelöst? –

Verwandte Themen