- Beispiele dafür, standortbezogene Logik in eine App einzubauen
- Wenn Sie je nach Region die Sprache oder Währung der App festlegen möchten
- Wenn Sie Menschen in bestimmten Ländern Rabatte anbieten möchten
- Wenn Sie einen Store Locator haben, der den dem Benutzer nächstgelegenen Standort anzeigen muss
- Wenn eine Wetter-App auf den Standort angewiesen ist, bevor sie alle Arten von Daten bereitstellen kann
- Wenn Sie Ihre App aus rechtlichen Gründen geofencen möchten (z. B. Cookie-Banner)
- Es gibt einige gemeinsame Themen
- Anzeige/Benutzererfahrung: Standortinformationen werden genutzt, um die Benutzererfahrung zu verbessern oder zu vereinfachen
- Funktion/Logik: Die Geschäftslogik der Anwendung ändert sich je nach Standort
- Richtlinien/Compliance: Es gibt rechtliche Anforderungen, Funktionen einzuschließen oder auszuschließen
- Die Abgrenzung ist nicht immer eindeutig. In manchen Fällen überschneiden sich diese Bereiche, aber es ist wichtig, diese Unterscheidung im Hinterkopf zu behalten, weil sich die Schwere einer falschen Eingabe unterscheidet
Wege, den Standort eines Benutzers zu ermitteln
- Den Benutzer direkt nach seinem Standort fragen
- Vorteile: leicht umzusetzen, vertrauenswürdig, wenn der Benutzer korrekte Informationen angibt, kann viele verschiedene Standorte unterstützen
- Nachteile: Der Benutzer kann sich vertippen oder Informationen auslassen, der Benutzer kann falsche Angaben machen
- Heuristiken des Geräts verwenden
- Moderne Geräte können über GPS, Wi-Fi-Daten, Mobilfunkmasten und IP-Adressen auf Standortinformationen zugreifen
- Webentwickler können über die Geolocation API des Browsers auf den Standort des Benutzers zugreifen
- Nachteil: Sie müssen den Benutzer um Erlaubnis zum Teilen des Standorts bitten, und der Benutzer kann dies ablehnen
- IP-Adressen verwenden
- IP-Adressen dienen dazu, Geräte in einem Netzwerk eindeutig zu identifizieren und zu lokalisieren
- Jeder Zahlenblock einer IP-Adresse steht für ein Subnetz von grob zu fein
- Allein aus der IP-Adresse lässt sich der Standort des Benutzers nicht sicher erkennen, daher muss sie mit bekannten Standortdatenbanken für Subnetze abgeglichen werden
- Edge Computing verwenden
- Dabei werden Benutzeranfragen auf dem nächstgelegenen Server ausgeführt
- So können Standortinformationen bereitgestellt werden, ohne um Erlaubnis zu fragen oder die IP-Adresse nachzuschlagen
- Nachteil: Es ist der Standort des Edge-Nodes, nicht der tatsächliche Standort des Benutzers
Warum man dem Benutzerstandort nicht vertrauen kann
- Man kann dem Benutzer nicht vertrauen
- Es gibt keine Garantie, dass ein Benutzer immer ehrlich seinen tatsächlichen Standort eingibt
- Er kann auch versehentlich falsche Informationen eingeben
- Man kann dem Gerät nicht vertrauen
- Der Benutzer kann die Nutzung der Geolocation API ablehnen
- Der Benutzer kann die Informationen der Geolocation API in den Browsereinstellungen verändern
- Man kann der IP-Adresse nicht vertrauen
- Der Benutzer kann Anfragen über ein VPN leiten
- Dann sehen Sie nur die IP-Adresse des VPN und kennen die tatsächliche IP des Benutzers nicht
- Man kann Edge Computing nicht vertrauen
- Da es sich um den Standort des Edge-Nodes handelt, kann er vom tatsächlichen Standort des Benutzers abweichen
- Bei der Nutzung eines VPN kann nicht auf die ursprüngliche IP-Adresse zugegriffen werden
Was sollten wir also tun?
- Es gibt viele Wege, Standortinformationen zu erhalten, aber keiner davon ist vollständig vertrauenswürdig
- Bedeutet das, dass wir aufgeben sollten? No! Sie können bessere Informationen bekommen und Vorkehrungen treffen
Beispiel: Übersetzung von Inhalten
- Nehmen wir an, es gibt eine Website, die auf Englisch verfasst ist, aber auch andere Sprachen unterstützt
- Sie möchten die lokale Sprache des Benutzers laden, um die Benutzererfahrung zu verbessern
- Wie sollten Benutzer in Belgien behandelt werden, die Niederländisch (Flämisch), Französisch und Deutsch sprechen?
- Der Benutzer ruft die Website auf
- Über Edge Computing wird festgestellt, dass die Anfrage aus Belgien kommt
- In den HTTP-Cookies wird nach einer Spracheinstellung gesucht
- Wenn ein Cookie vorhanden ist, wird die bevorzugte Sprache verwendet
- Wenn kein Cookie vorhanden ist, wird die englische oder niederländische Version verwendet
- Die Website bietet dem Benutzer eine Liste unterstützter Sprachen an
- Wenn der Benutzer eine Sprache auswählt, wird diese Präferenz im Cookie gespeichert
- In diesem Szenario werden Edge Computing und Angaben des Benutzers kombiniert, um Standortinformationen zu erhalten und so die Benutzererfahrung zu verbessern
- Es scheint nicht nötig zu sein, die Geolocation API zu verwenden
- Es besteht das Risiko, dass die falsche Sprache angezeigt wird, aber die Kosten sind gering
- Auch wenn Standortinformationen falsch sind oder fehlen, funktioniert die Website weiterhin
- Update: Es kann auch der Header
Accept-Language verwendet werden, der die bevorzugte Sprache und Locale des Clients angibt
Beispiel: Wetter-App
- Es gibt eine Anwendung, die standortbasiert Wetterinformationen anzeigt
- In diesem Fall braucht die App Standortinformationen, um zu funktionieren. Wenn diese Informationen fehlen, wie soll dann das Wetter angezeigt werden?
- In diesem Szenario ist es unbedenklich, beim ersten Laden den Standort des Benutzers anzunehmen
- Über Edge Computing oder die IP-Adresse können Sie diese Information beziehen und das Wetter der Region anzeigen, in der sich der Benutzer Ihrer Annahme nach befindet
- Da der Hauptfokus der Website zudem auf dem Standort liegt, können Sie über die Geolocation API präzisere Daten anfordern
- Sie sollten außerdem eine flexible Möglichkeit zur Benutzereingabe anbieten, falls der Benutzer Informationen für einen anderen Ort möchte
- Dazu können Sie ein Such-Eingabefeld mit Autovervollständigung bereitstellen, das möglichst detaillierte Standortinformationen liefert
- Wie spätere Besuche behandelt werden, kann unterschiedlich sein. Sie können immer das „lokale“ Wetter als Standard setzen oder sich den Standort aus einem früheren Besuch merken
- Der Benutzer ruft die Website auf
- Bei der ersten Anfrage wird der Standort über Edge Computing oder die IP-Adresse geschätzt und die App damit gestartet
- Beim ersten Laden des Clients wird die Geolocation API ausgeführt, um die Informationen zu aktualisieren
- Für spätere Ladevorgänge können Standortinformationen in einem Cookie gespeichert werden
- Bieten Sie für die Suche nach anderen Orten eine flexible Eingabe mit Autovervollständigung an
- Der entscheidende Punkt hier ist, dass die App sich nicht wirklich dafür interessiert, wo der Benutzer tatsächlich ist
- Sie braucht einfach nur einen Standort
- Ein vom Benutzer gemeldeter Standort (Suche) hat Vorrang vor einem Standort, der aus Cookie, Edge Computing oder IP-Adresse ermittelt wurde
- Da sich das Wetter täglich ändert, lohnt es sich auch, über Caching-Strategien nachzudenken und darüber, ob die App überwiegend serverseitig oder clientseitig gerendert werden sollte
Beispiel: Filialfinder
- Nehmen wir an, Sie betreiben physische Geschäfte an mehreren Standorten
- Sie können Produktkatalog und Lagerbestand online anzeigen, aber es ist sinnvoll, aktuelle Informationen zum Lagerbestand in den Filialen bereitzustellen
- Dafür müssen Sie wissen, für welche Filiale der Bestand angezeigt werden soll, und für die beste Benutzererfahrung sollte es die dem Benutzer nächstgelegene Filiale sein
- Wiederum ist es sinnvoll, den Standort des Benutzers über Edge Computing oder die IP-Adresse vorherzusagen
- Danach sollten Sie eine flexible Eingabe anbieten, in die der Benutzer Standortinformationen eingeben kann, die Autovervollständigung aber auf eine nach Nähe sortierte Liste von Filialen beschränken
- Es ist auch sinnvoll, die Geolocation API auszuführen
- Der Unterschied zwischen diesem Beispiel und dem vorherigen ist, dass der Hauptzweck der Website nicht vom Standort abhängt
- Deshalb sollten Sie warten, bis der Benutzer mit standortabhängigen Funktionen interagiert
- Das heißt, Sie sollten erst dann nach dem Standort fragen, wenn der Benutzer das Feld des Filialfinders fokussiert
Beispiel: regionale Preisdifferenzierung
- Das ist ein etwas heikles Thema: Wie berechnet man Benutzern je nach Standort unterschiedliche Preise?
- Beispielsweise ist bekannt, dass manche Fluggesellschaften und Hotels Benutzern, die aus bestimmten Regionen buchen, höhere Preise anzeigen als Benutzern aus anderen Regionen
- Ethische Fragen einmal beiseitegelassen, ist das eine Frage der Profitabilität und hat daher sehr große Auswirkungen
- Daher möchten Sie wahrscheinlich nicht zulassen, dass Benutzer Preise einfach über selbst angegebene Standortinformationen ändern können
- In diesem Fall würden Sie wahrscheinlich nur Edge Computing oder IP-Adressen verwenden
- Benutzer können das mit einem VPN umgehen, aber es ist vermutlich das Beste, was Sie tun können
- Wenn Sie sich wirklich Sorgen um Betrüger machen, könnten Sie versuchen, mit der erweiterten Proxy-Erkennung von Akamai Anfragen von VPN-Benutzern zu blockieren
- Allerdings kann das dazu führen, dass statt eines vergünstigten Verkaufs gar kein Verkauf zustande kommt. Die Entscheidung liegt bei Ihnen
Beispiel: Cookie-Banner
- Dieses letzte Beispiel konzentriert sich stärker auf rechtliche Compliance, daher ein kleiner Haftungsausschluss vorweg: Ich bin kein Anwalt!!!
- Dies ist nur ein hypothetisches Beispiel und sollte nicht als Rechtsberatung verstanden werden
- 2016 verabschiedete die Europäische Union die Datenschutz-Grundverordnung (GDPR)
- Dabei handelt es sich um ein Gesetz zum Schutz der Privatsphäre von Internetnutzern in der EU, das auch für Unternehmen außerhalb der EU gilt, wenn sie Personen in der EU Waren oder Dienstleistungen anbieten
- Es gibt viele Anforderungen an Website-Betreiber, aber worauf ich hinaus will, ist das Übel der Cookie-Banner, die wir heute überall im Netz sehen
- Ich werde nicht über Datenschutzfragen, darüber, ob Cookie-Banner richtig oder falsch sind, über ihre Wirksamkeit oder Unwirksamkeit oder über mögliche bessere Ansätze diskutieren
- Stattdessen würde ich sagen, dass es besser ist, Cookie-Banner nur dann anzuzeigen, wenn sie rechtlich erforderlich sind, und sie andernfalls zu vermeiden
- Wieder einmal ist es sehr wichtig, den Standort des Benutzers zu kennen
- Das ist dem vorherigen Fall sehr ähnlich und die Umsetzung ebenfalls. Der Hauptunterschied liegt in der Schwere der Folgen, wenn etwas schiefgeht, und damit im Aufwand, es richtig zu machen
- Cookie-Banner sind vielleicht das verbreitetste Beispiel dafür, wie Gesetze und Benutzerstandort eine Website beeinflussen können, aber wenn Sie das eindrücklichste Beispiel suchen, dann ist es wahrscheinlich Chinas Great Firewall
Fazit
- Es gibt keine allgemeingültige richtige Antwort für die Bestimmung des Benutzerstandorts
- Je nach Szenario sollten Sie Benutzerangaben, Geräteheuristiken, Edge Computing und IP-Adressen kombiniert einsetzen
- Wichtige Fragen
- Brauchen Sie den Standort des Benutzers, oder reicht irgendein Standort?
- Wie genau müssen die Daten sein?
- Ist es akzeptabel, wenn der Benutzerstandort gefälscht werden kann?
- Sie sollten außerdem rechtliche Compliance, Vorschriften, Funktionalität und die Frage berücksichtigen, ob 95 % Zuverlässigkeit ausreichen
- Wenn Sie Standortlogik aus rechtlichen Gründen verwenden, ist es gut, Maßnahmen zu ergreifen, um sich selbst zu schützen
- Einhaltung von Datenschutzgesetzen wie CCPA und GDPR
Noch keine Kommentare.