web-dev-qa-db-de.com

So deaktivieren Sie "Strengen Modus für Umleitungs-URIs verwenden" in der Facebook-App

Gibt es eine Möglichkeit, die Option Use Strict Mode for Redirect URIs In einer Facebook-App zu deaktivieren? Es scheint, dass diese Eigenschaft ab März 2018 automatisch aktiviert und ausgegraut ist und daher nicht deaktiviert werden kann. Facebook scheint die Authentifizierung nur zuzulassen, wenn die genaue URL in Valid OAuth Redirect URIs Angegeben ist. Dies ist ein Problem, da das Sitecore Social Connected-Modul jedes Mal, wenn Sie sich anmelden, einen anderen Statusparameter in der Abfragezeichenfolge zu übergeben scheint. Ich habe die Verwendung von Redirect URI Validator In der Facebook-App getestet und dies bestätigt, dass die Weiterleitung erforderlich ist Seien Sie genau wie pro Valid OAuth Redirect URIs.

10
Matthew Dresser

Gibt es eine Möglichkeit, die Option Use Strict Mode for Redirect URIs In einer Facebook-App zu deaktivieren?

NEIN

Aufgrund der an Facebook vorgenommenen Sicherheitsänderungen ist es nicht mehr möglich, diese Einstellung zu deaktivieren.


In Bezug auf die Besonderheiten von Sitecore und des Social Connected-Moduls habe ich in @ CBroes Kommentaren festgestellt, dass Valid OAuth Redirect URIs Jetzt einen Abfragezeichenfolgenparameter enthalten muss, der wie folgt lautet:

http://example.com/layouts/Social/Connector/SocialLogin.ashx?type=access

zuvor hatte ich gerade

http://example.com/layouts/Social/Connector/SocialLogin.ashx

Wenn Sie HTTPS verwenden, müssen Sie den URI auch mit der Portnummer eingeben, d. H.

https://example.com:443/layouts/Social/Connector/SocialLogin.ashx?type=access

Dieser letzte Punkt steht nicht im Zusammenhang mit den letzten Änderungen an der Facebook-App.

7
Matthew Dresser

Gleiche Erfahrung, ich konnte es nicht ausschalten. Was letztendlich für mich funktionierte, war

Ich habe einen Link auf meiner Website, der den Anmeldevorgang startet:

https://www.example.com/users/auth/facebook

Das Befolgen dieser Anweisung veranlasst meine Rails App, zu umzuleiten

https://www.facebook.com/v2.6/dialog/oauth?client_id=1234&redirect_uri=https%3A%2F%2Fwww.example.com%2Fusers%2Fauth%2Ffacebook%2Fcallback&response_type=code&scope=email&state=123456

Facebook antwortet mit

https://www.example.com/users/auth/facebook/callback?code=abcverylongcodexyz

Daher lautet die URI, die in die Whitelist aufgenommen werden muss, einfach " https://www.example.com/users/auth/facebook/callback ", ohne den Codeteil.

FWIW, als ich meine Site von http nach https verschoben habe, musste ich meine config/initializers/devise.rb aktualisieren, um sie einzuschließen

config.omniauth :facebook, '1234', '34567', :scope => 'email', :callback_url => 'https://www.example.com/users/auth/facebook/callback'

da es immer noch das http: -Protokoll in der Rückruf-URL verwendet und Sie in diesem Protokoll keine URI gemäß den aktuellen Richtlinien auf die Whitelist setzen können.

0
Jeff