2016-04-23 6 views
1

Ich habe eine Anwendung auf Google App Engine (GAE) für Java bereitgestellt. Ich verwende das Google Identity Toolkit zur Authentifizierung (und nicht die standardmäßige Google-Konto-basierte Authentifizierung, die von GAE bereitgestellt wird). Das Front-End basiert auf GWT.Autorisierung für statische Dateien in der Google App Engine-Anwendung (kein Google-Konto)

Ich habe einige statische Inhalte (Bilddateien), die in war/static/images Ordner befindet. Ich möchte den Zugriff auf diese Dateien nur auf einen Teil der angemeldeten Benutzer beschränken, z. B. Autorisierung um diese Dateien hinzufügen. GAE bietet security-constraits, aber das funktioniert nicht für mich, da ich keine Google-Konten verwende und selbst dann keine vollständige Autorisierung basierend auf meinen Anforderungen bietet.

Was ist der beste Weg, Autorisierung um diese statischen Assets hinzuzufügen?

Antwort

1

Google Appengine speichert statische Dateien auf anderen Servern und nicht auf demselben Anwendungsserver wie Ihre App.

Sie können also keine Berechtigungsprüfung hinzufügen, Sie können Google Cloud Storage verwenden und acls setzen, aber das funktioniert auch nur für Google-Nutzer, Sie können dort auch keine eigene Berechtigung haben.

Also die Antwort ist, müssen Sie statische Dateien als Ressource-Dateien ändern, und fügen Sie Routen zu diesen Dateien anstelle von direktem Zugriff, dann in Ihren Endpunkten oder Controller können Sie benutzerdefinierte Autorisierung basierend auf Sitzung oder Zugriffstoken oder andere hinzufügen Identitätsoptionen: Sobald der Benutzer für den Zugriff auf diese Dateien autorisiert wurde, können Sie diese Dateien als Antwort bereitstellen.

+0

Danke, Ramesh. Ich fand die Antwort hier: http://stackoverflow.com/questions/6491025/how-to-get-image-with-servlet-and-display-it-using-gwt-image-class die in Übereinstimmung mit Ihrer Antwort. Ich habe dem Servlet meinen benutzerdefinierten Autorisierungscode hinzugefügt und über das Servlet auf die Bilder zugegriffen. Ich akzeptiere deine Antwort als die richtige Antwort. – DFB

Verwandte Themen