1

Wir verwenden die Synchronisierungsfunktion der Azure Easy-Tabellen aus unserer iOS-App. Wir haben unsere eigene Authentifizierung und Autorisierung in unserem System implementiert. Ich habe es für Easy APIs gemacht. Ich möchte die gleiche Logik auf Easy Tables Sync auch erweitern. Ich bin nicht sicher, wie man diese Logik zu einfachen Tabellen Datenänderungen hinzufügt.InHouse-Autorisierung für Azure Easy-Tabellen

Alle Zeiger würden sehr geschätzt werden.

Antwort

1

Technisch ist dies genauso einfach wie Easy APIs. Ihr Authentifizierungs-/Autorisierungsmechanismus muss eine JWT mit einer bekannten Zielgruppe, einem Aussteller und einem Signaturgeheimnis erzeugen, die Sie an Ihren Client zurückgeben. Ihr Client platziert den JWT, der im Client empfangen wird. CurrentUser.mobileServicesAuthenticationToken (der tatsächliche Name dieser Eigenschaft variiert je nach Client aufgrund der Groß-/Kleinschreibung). Sobald dies erledigt ist, sendet der Client das Token bei jeder Anfrage.

In Ihrem Backend müssen Sie die Auth-Einstellung für Ihren Server auf etwas Neues einstellen. In Easy Tables umfasst dies das Bearbeiten der Hauptdatei und das Anpassen des Aufrufs, der den Zumo-Server erstellt. Geben Sie für Code in der app.js-Datei, die wie folgt aussieht:

var mobile = azureMobileApps({ 
    // Explicitly enable the Azure Mobile Apps home page 
    homePage: true 
}); 

Machen Sie es wie folgt aussehen:

var mobile = azureMobileApps({ 
    homePage: true, 
    auth: { 
     audience: "the-aud-field-from-your-JWT", 
     issuer: "the-iss-field-from-your-JWT", 
     secret: "the-secret-used-to-sign-the-JWT" 
    } 
}; 

Referenz: http://azure.github.io/azure-mobile-apps-node/global.html#authConfiguration

Es ist ein wenig gotcha in Bezug auf das Geheimnis. Dieser Wert wird direkt in den jsonwebtoken-Decoder eingegeben, so dass Sie möglicherweise das verwendete Geheimnis in einen Puffer pro jsonwebtoken instructions konvertieren müssen.

Verwandte Themen