Wie kann ich einen unendlich lang gültigen Facebook Page Accesstoken erzeugen?

Facebook Access Tokens sind eine ziemlich fiese Sache, wenn man Server only Anwendungen bauen möchte – also keine wirkliche Chance hat, den User einen Token besorgen zu lassen. Zusätzlich haben die “normalen” Access Tokens bei Facebook das Problem, dass sie spätestens nach 60 Tagen ungültig sind. Es gibt aber derzeit noch eine Möglichkeit, an unendlich gültige Access Tokens zu kommen. Mit diesen Tokens könnt ihr beliebig auf euer Seite posten, Statistiken abfragen usw. – und an diesen Token kommt ihr so:

  1. Zunächst müsst ihr Admin der gewünschten Fan Page sein
  2. erstellt eine Facebook App – natürlich mit dem gleichen User, der auch Admin der Seite ist.
  3. kopiert in den Einstellungen der App die App-ID sowie das App Secret
  4. öffnet den Facebook Graph API Explorer
  5. oben rechts ist ein Dropdown, in dem ihr die eben erstellte App auswählt (anfänglich steht da “Graph API Explorer” drin)
  6. nun klickt ihr auf das “Get Token”-Dropdown und wählt da “Get User Access Token” – dabei ist es wichtig, dass ihr in der nun erscheinenden Übersicht das Häkchen bei “manage_pages” setzt
  7. kopiert nun den kurzfristigen Token aus dem Textfeld in der Mitte und ruft folgende URL auf:
    https://graph.facebook.com/oauth/access_token?client_id=[APP_ID]&client_secret=[APP_SECRET]&grant_type=fb_exchange_token&fb_exchange_token=[TOKEN]
  8. kopiert euch den nun angezeigten langfristigen Token (LONG_LIVING_TOKEN, 60 Tage gültig)
  9. ruft nun die folgende URL auf:
    https://graph.facebook.com/me/accounts?access_token=[LONG_LIVING_TOKEN]

  10. in dem nun erscheinenden JSON seht ihr alle von euch verwalteten Seiten sowie deren unendlich lang gültigen Tokens für die verwendete App

Zur Überprüfung ruft ihr einfach das Access Token Debug Tool auf: 

https://developers.facebook.com/tools/debug/accesstoken

Hier könnt ihr den Token eintragen und bekommt dann Informationen darüber – und eben auch die Gültigkeit.

[Quicktip] Nginx Reverse Proxy mit Basic Auth

Nehmen wir an, ihr richtet einen Nginx als reverse Proxy ein und möchtet nun, dass bestimmte Subdomains, die von anderen Servern durchgeschliffen werden, per Basic Auth “geschützt” werden sollen. Dann werdet ihr wahrscheinlich auf das Problem stoßen, dass ihr immer wieder nach dem Basic Auth Login gefragt werdet und der Reverse Proxy nicht korrekt agiert. Die Lösung ist ganz einfach: ihr müsst verhindern, dass die Basic Auth Header weitergereicht werden. Und das geht so:

server {
    listen 80;
    server_name foo.bar.com;
    access_log            /var/log/nginx/foo.access.log;
    location / {
      proxy_set_header        Authorization "";    # <== das ist die wichtige Zeile, die verhindert, dass Basic Auth weiter gereicht wird!
      auth_basic              "Protected";
      auth_basic_user_file    /etc/nginx/basic_auth;
      proxy_set_header        X-Real-IP $remote_addr;
      proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header        X-Forwarded-Proto $scheme;
      proxy_set_header        Host [YOUR_REMOTE_DOMAIN];
      proxy_set_header        Accept-Encoding "";
      proxy_pass              [YOUR_REMOTE_URL];
      proxy_read_timeout      90;
    }
}

[Quicktip] 2 Faktor Authentifizierung für Amazon aktivieren

Mittlerweile hat man mit Amazon ja einen relativ wichtigen Account, über den man nicht nur einkauft, sondern evtl. auch seine Cloud Server betreibt oder das Amazon Cloud Drive verwendet. Von daher macht die 2 Factor Authentifizierung in jedem Fall Sinn, um nicht mal eine böse Überraschung zu erleben.

Die Aktivierung ist relativ leicht: meldet euch einfach auf “amazon.com” statt auf “amazon.de” an, und geht dann in die Accounteinstellungen, wo ihr das Passwort ändern könnt (Login & Security Settings). Unter “Advanced Security Settings” könnt ihr dann 2-Factor Auth aktivieren. Sobald das erledigt ist, erscheint dieser Menüpunkt auch auf der deutschen Amazon Seite 😉

Wie man in der Owncloud Gallery App die natürliche Sortierung von Dateien aktiviert

Owncloud hat mich wirklich von Anfang an begeistert – genauso gut wie Dropbox, aber auf dem eigenen Server. Die Clients auf den Rechnern arbeiten zuverlässig und tun genau, was sie sollen. Die mobilen Clients sind noch etwas verbesserungswürdig, die Owncloud Web Applikation hingegen ist schon ziemlich gut. Besonders gefallen hat mir die Gallery App, die Foto Ordner in schöne Galerien umwandelt. Sie hat aber ein gravierendes Problem: die Sortierung.

Meine Dateinamen in einem Ordner heißen beispielsweise:

Bild-1.jpg
Bild-2.jpg
Bild-3.jpg

Bild-10.jpg

Bild-20.jpg

Bild-100.jpg

In der Owncloud Datelliste werden sie auch so korrekt aufgelistet, in der Gallery App passiert jedoch folgendes:

Bild-1.jpg
Bild-10.jpg
Bild-100.jpg

Bild-2.jpg
Bild-20.jpg
Bild-3.jpg

Dieses Verhalten ist auf eine Javascript Funktion zurückzuführen und kann relativ einfach korrigiert werden. Editiert dazu einfach die Datei “apps/gallery/js/gallery.js”. Sucht nach der Zeile:

Gallery.fillAlbums = function () {
	var sortFunction = function (a, b) {
		return a.path.toLowerCase().localeCompare(b.path.toLowerCase());
	};

und ändert diese in

Gallery.fillAlbums = function () {
	var sortFunction = function (a, b) {
		return a.path.toLowerCase().localeCompare(b.path.toLowerCase(), 'de', {numeric: true});
	};

Und schon ist die Sortierung wieder so, wie erwartet.

[Quicktip] Paypal mit 2-Faktor Authentifizierung nutzen

Neben vielen anderen großen Anbietern unterstützt auch Paypal die 2-Faktor Authentifizierung. Bis vor kurzem hatte ich noch die Variante per SMS genutzt, war aber mehr als unzufrieden damit. Zum einen kommen die SMS teilweise sehr spät an und sind somit ungültig (teilweise bis zu 10 Min verspätet), zum anderen – und das ist besonders ungünstig – war es mir nicht mehr möglich, per mobiler Paypal Website zu bezahlen. Es wurde zwar immer nach einem Sicherheitsschlüssel gefragt, jedoch hatte ich nicht den Button, um mir die SMS mit dem Code zuzusenden. Man fragt sich an der Stelle, ob das niemand bei Paypal mal getestet hat.

Naja egal – nachdem ich mich nun per Mail beim Support darüber beschwert habe, wurde mir eine weitere Alternative, die nirgendwo auf der Paypal Seite dokumentiert ist, genannt: die App VIP Access von Symantec (gibt es für Android und IOS). Die App ist nichts anderes als ein RSA Token Generator, der alle 30 Sekunden einen neuen Sicherheitsschlüssel generiert. Und so richtet ihr das Teil ein:

  • bei Paypal einloggen
  • “Mein Profil” -> “Einstellungen” und dann bei “Sicherheitsschlüssel” auf aktualisieren klicken
  • wichtig: solltet ihr bereits den SMS Schlüssel aktiviert haben, dann muss dieser DEAKTIVIERT werden!
  • nun klickt ihr in der Übersicht über eure Sicherheitsschlüssel unten auf “Kostenlos bestellen: Richten Sie Ihren SMS-Sicherheitsschlüssel mit nur wenigen Klicks ein”
  • auf der anschließenden Seite klickt ihr auf “ABBRECHEN”!
  • Nun seht ihr 3 kleine Fenster mit jeweils einem Button drin und wählt da ganz rechts das Kästchen mit dem Button “aktivieren”
  • Bei Seriennummer tragt ihr die “Credential ID” eurer VIP Access App ein, in die beiden Code Felder jeweils einen Sicherheitscode. Sobald ihr den ersten Code eingegeben habt, wartet ihr 30 Sekunden und tragt dann in das dritte Feld diesen weiteren Code ein. Anschließend bestätigt ihr das ganze mit dem “aktivieren” Button
  • Wichtig: falls ihr das ganze partout nicht aktiviert bekommt: deinstalliert die App von eurem Handy und installiert sie neu. Damit erhaltet ihr eine neue “Credential ID”. Bei mir hat das neu Installieren geholfen und meine Aktivierung wurde angenommen.

[Quicktip] neues Facebook Design ist sehr langsam in Google Chrome

Nach langer Zeit wurde nun endlich mein Facebook Account auf das “neue” Design umgestellt. Neben dem deutlich anderen Aussehen hatte ich allerdings das Problem, dass die Seite nun extrem langsam und teilweise unbenutzbar war.

Die Lösung für das Problem ist dann doch leichter als gedacht: bei mir hat es gereicht, den Browser Cache komplett zu leeren. Wenn das nicht reicht, sollte man auch noch gleich alle Cookies löschen.

Ein Musterbeispiel, wie Social Media für Unternehmen richtig funktioniert

Leider ist dieses Sahnestück irgendwie völlig an mir vorbei gegangen, aber glücklicherweise hat meine Kollegin mich darauf hingewiesen: die Rede ist von einer äußerst netten Konversation, die zunächst zwischen einer jungen Frau und der deutschen Bahn entstand. Die junge Dame brachte ihren Unmut über die ständigen Probleme mit der Bahn in Form eines “Schluss-mach-Briefes” in einer sehr lyrischen Form zum Ausdruck und gab dann bekannt, dass sie eine neue Liebe in einem Automobil gefunden hat. Doch lest selbst:

db_1

db_2

db_3

db_4

db_5

db_6

db_7

db_8

Und jetzt wird es so richtig lustig – es mischt sich mit Renault ein völlig unbeteiligtes Unternehmen mit ein, aber es passt einfach nur perfekt:

db_9

Opel springt nun auch auf den Zug auf:

db_10

was aber zum “Unmut” anderer Opel Kunden führt:

db_11

Worauf Opel großartig reagiert:

db_12

Es folgen weitere Trittbrettfahrer, die aber in Summe doch recht lustig sind:

db_13

db_14

db_15

db_16

Mein Gott, was für ein großartiges Stück Internetgeschichte – und Social Media, wie es alle Unternehmen jederzeit betreiben sollten. Und für alle, die noch immer denken, dass sie “Social Media Berater” brauchen oder Firmenvorstände, die jeden Tweet/Statuspost schriftlich absegnen wollen: lasst es einfach. Ihr habt das Internet nicht verstanden und ihr werdet es nie verstehen. Lasst einfach Leute ran, die frei von der Leber weg (natürlich immer mit Niveau!) schreiben (und dies auch dürfen). Eure Kunden werden es euch danken!