Frage

Ich baue eine Chrome-Erweiterung, die mit der Salesforce-Chatter-API interagieren wird.Für einen Benutzer mit der Authentifizierung von OAUTH (User Agent Flow) muss ich meinen Client-Schlüssel in meine Erweiterung einbetten.

verursacht dies ein sicherheitsproblem?Oder gibt es eine Möglichkeit, OAuth zu verwenden, ohne die Client-ID in meine Erweiterung einzubetten?

War es hilfreich?

Lösung

Die Client-ID muss in eine Anfrage aufgenommen werden, sodass der Anbieter weiß, dass der Antrag von Ihnen kam, da @matt Lacey bereits darauf hingewiesen wurde. Normalerweise gibt der Anbieter auch ein vertrauliches Client Secret aus, das zusätzlich in die Anforderung Access Token enthalten ist. Daher kann der Anbieter überprüfen, ob Ihre App das verwenden darf, dass verwendet werden darf Client-ID .

Chrome-Erweiterungen, die auf einer offenen Plattform ausgeführt wird, und die Plattform selbst bietet keine Methoden, um die Erweiterung der Erweiterung gegen einen Server zu authentifizieren (welche Salesforce dann auch unterstützen ") oder das Speichern von Immobilien sicher (wären schwer, wenn Sie nicht offen sind Plattform), also ist es leider nicht möglich, das -Kleensgeheimnis zu halten vertraulich nicht.

Da dies ein häufiges Problem ist, wird es bereits in der OAuth-Spezifikation berücksichtigt (siehe ABSCHNITT 10.1 Client-Authentifizierung und 10.2 Client-Unerstrahlung ). Der Anbieter ist daher erforderlich, um zusätzliche Schecks durchzuführen, aber auf der Clientseite können Sie nichts tun, um die Sicherheit effektiv zu verbessern.

Wenn Sie mehr Einblick in die Zukunft in Android-Geräten abwickeln möchten, überprüfen Sie meine Antwort hier .

Andere Tipps

Sie müssen die Client-ID in der Erweiterung einbetten, um Salesforce zu informieren, was die App ist, die sich der Authentifizierung versucht.Diese Client-IDs sollen immer gespeichert und an den Server übergeben werden, so lange, solange Sie sie auf sichere Weise speichern, es sollte kein Problem geben.

as matt erläutert, wenn Sie eine verpackte App erstellen, die Sie dazu zwingen, die Client-ID aufzunehmen.Weitere Lösungen sind das Schreiben der App als gehostete App:

Was ist der Unterschied zwischen verpackten Apps und gehosteten Apps?

Der Nachteil davon ist die zusätzliche Komplexität der Verwaltung eines Webservers.Es wird jedoch eine größere Sicherheit ermöglichen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top