Frage:
Verhindern, dass registrierte Benutzer Kennwörter freigeben
oyvey
2015-11-16 14:09:56 UTC
view on stackexchange narkive permalink

Nachfolgend finden Sie einen Vorschlag zum Umgang mit einer Situation der Website-Sicherheit. Ich frage mich, ob dies sowohl aus technischer als auch aus benutzerfreundlicher Sicht machbar erscheint. Ich möchte sicherstellen, dass der Vorschlag offensichtliche Fehler enthält.

  1. Die Website
  2. ol>

    Bei der fraglichen Website handelt es sich um eine Schulwebsite, auf der Schüler verschiedene Produkte erwerben können Artikel. Diese Schüler erhalten auf der Website ein Konto mit einem Benutzernamen und einem Passwort, mit denen sie sich anmelden können. Sobald sie sich angemeldet haben, haben sie Zugriff auf geschützte Seiten mit privaten Inhalten, die der Öffentlichkeit insgesamt nicht zur Verfügung stehen.

    1. Das Sicherheitsrisiko
    2. ol>

      Die Eigentümer der Website möchten verhindern, dass sich ein einzelner Schüler auf der Website anmeldet, einen Benutzernamen und ein Passwort erhält und diese Anmeldeinformationen dann an einen Freundeskreis weiterleitet, der sich dann auf der Website anmelden und die Website illegal anzeigen kann privater Inhalt.

      1. Die Lösung
      2. ol>

        Die zentrale Idee, die wir zur Lösung dieses Sicherheitsproblems entwickelt haben, besteht darin, jedem Schüler die Erlaubnis zu geben um sich nur auf zwei Geräten auf der Website anzumelden. Sobald sich ein Schüler auf zwei verschiedenen Geräten anmeldet, ist er auf diese beiden Geräte beschränkt. Wenn sie dann versuchen, sich auf einem dritten Gerät anzumelden, würde das System dies einfach nicht zulassen. Nach unserem Verständnis verwenden andere Websites, die private Inhalte anbieten, wie z. B. Netflix, einen solchen Ansatz.

        1. Implementierung
        2. ol>

          Es kommen zwei Ideen Beachten Sie die oben genannten Sicherheitsmaßnahmen: IP-Adresse und Cookies. Wir schließen IP-Adressen aus, die sich ändern können, und wählen Cookies. Websites wie amazon.com ermöglichen es ihren Kunden, sich einmal anzumelden. Wenn sie dann zur Website zurückkehren, werden sie immer erkannt. Dies wird mit ziemlicher Sicherheit durch Cookies erreicht.

          Jedes Mal, wenn sich ein Schüler anmeldet, speichern wir auf seinem Gerät ein Cookie. Und wir werden dieses Cookie auch in unserer Datenbank unter dem Konto dieses Schülers speichern. Jedes Mal, wenn sich ein Schüler auf einem Gerät anmeldet, prüfen wir, ob das Gerät, auf dem er sich gerade anmeldet, das Cookie enthält, das wir für diesen Schüler gespeichert haben. Wenn dies nicht der Fall ist, wissen wir, dass sich der Schüler auf einem anderen Gerät anmeldet. Auf diese Weise können wir feststellen, auf wie vielen Geräten sich der Schüler anmelden möchte.

          1. Nachteile
          2. ol>

            Wir haben mindestens festgestellt Drei mögliche Nachteile dieses Ansatzes:

  • Löschen von Cookies. Personen können aus verschiedenen Gründen die Cookies von ihrem Computer löschen.
  • Eine gutgläubige Person hat gelegentlich keinen Zugriff auf ihr übliches Gerät und möchte sich an einem anderen Computer anmelden.
  • Menschen kaufen von Zeit zu Zeit neue Geräte.
  • Dies sind Beispiele für Situationen, in denen sich ein gutgläubiger Benutzer aus legitimen Gründen anmelden möchte, dies jedoch aufgrund der Sicherheitsbeschränkung der Website für zwei Geräte.

Wir haben einige Ideen, wie Logik in das System eingebaut werden kann, um mit solchen Situationen umzugehen, die wir möglicherweise in Zukunft implementieren, aber vorerst Wir sind der Meinung, dass solche Situationen so selten sind, dass wir sie nicht programmgesteuert behandeln müssen.

Im Falle eines Aussperrens eines Schülers erhalten sie vorerst einen Bildschirm mit einer Erläuterung Warum wir sie nicht in das System zugelassen haben und eine Schaltfläche, auf die sie klicken können, generiert automatisch eine E-Mail an die Site-Administratoren.

Die E-Mail informiert sie darüber, dass sich ein Schüler auf einem dritten Gerät anmelden möchte. Die Administratoren können sich dann an den Schüler wenden. Wenn sie davon überzeugt sind, dass der Bedarf gutgläubig ist, können sie vom CMS aus Schritte unternehmen, um diesen Schüler einzulassen.

Die Größe der Schülerschaft ist ausreichend überschaubar, dass der obige Ansatz machbar sein sollte.

  1. Faire Warnung
  2. ol>

    Wir werden die Schüler über diese Sicherheitsmaßnahmen informieren, wenn ihr Konto aktiviert wird, um unangenehme Überraschungen zu vermeiden.

Was ist mit dem Kopieren des Cookie-Werts? d.h. Schüler a gibt Schüler b seinen Cookie-Wert. Würde dies dem Schüler b den Zugang zum Dienst ermöglichen?
Was ist deine Frage ?
Wenn der Benutzer die Anmeldeinformationen freiwillig weitergibt, damit seine Freunde Zugriff auf den privaten Inhalt erhalten, kann der Benutzer den Inhalt auch einfach kopieren / drucken und an seine Freunde weiterleiten. Daher wird dieses System nur eine bestimmte Art der Weitergabe der Informationen einschränken, nicht jedoch die Weitergabe der Informationen im Allgemeinen.
Ich selbst habe zum Beispiel einen Desktop, einen Laptop, ein Tablet und ein Telefon. Also kann ich nur 2 als gebraucht verwenden? Beachten Sie auch, dass der zweite Benutzer, an dem Sie beteiligt sind, dies in kürzester Zeit herausgefunden und ein kleines Browser-Plugin geschrieben hat, das dieses Problem umgeht. Vertrauen Sie mir, die Kampfsoftware gegen Studenten ist eine, die Sie von Anfang an verloren haben. Vielleicht lösen Sie das Problem, warum sie Passwörter teilen, anstatt zu versuchen, die Symptome zu verhindern. Schau dir nur an, wie die Welt versucht, die Piratenbucht zu blockieren ...
Haben Sie darüber nachgedacht, zwei * gleichzeitige * Sitzungen auf zwei * beliebigen * Geräten pro Anmeldeinformationssatz zu beschränken? Dies löst alle Probleme, die mit der dauerhaften Beschränkung eines Satzes von Anmeldeinformationen auf zwei * unterschiedliche * Geräte verbunden sind.
Mir fällt ein, dass ich noch nie von jemandem gehört habe, der tut, was Sie verlangen. Das erscheint mir seltsam angesichts der großen Anzahl von Pay-for-Access-Websites, die es gibt. Sie scheinen das Gefühl zu haben, dass Sie es besser machen können als all diese Websites. Ich glaube, dass Sie die Anforderungen und technologischen Einschränkungen neu bewerten müssen.
All dies können Sie auf sehr einfache und effektive Weise erreichen: Erlauben Sie den Schülern, sich nur über die Terminals in Ihrer Schule anzumelden.
Das Problem mit 4 ist, was passiert, wenn sich ein Schüler auf seinem Telefon anmeldet und sein Telefon weitergibt? Oder einfach die Informationen ausdrucken?
Jedes Mal, wenn ich meinen Browser neu starte, werden alle Cookies gelöscht, genau wie sich meine IP täglich ändert.
Als Student möchte ich lieber den Inhalt selbst und nicht die Anmeldedaten teilen.
Du hast mein Mitgefühl. Ihr Lebensunterhalt hängt von erfreulichen ahnungslosen Schuladministratoren ab, die glauben, dass Informationen enthalten sein können. Wenn Sie sich nicht ganz sicher sind, wie vergeblich und schädlich dies ist, kann ich Ihnen nur empfehlen, Doctorows * Informationen wollen nicht frei sein * zu lesen.
Was ist der "private Inhalt", auf den Bezug genommen wird?
Da dies für eine Schule ist, haben Sie vermutlich physischen Zugang zu den Schülern. Anstatt zu versuchen, den Computer intelligent genug zu machen, um den Unterschied zwischen einem Benutzer mit 10 Geräten und einem Benutzer mit 9 Freunden zu erkennen, können Sie das System dazu bringen, Benutzer für die menschliche Aufmerksamkeit zu kennzeichnen. Menschen können diese Dinge viel besser beurteilen, insbesondere wenn sie tatsächlich mit dem betreffenden Benutzer sprechen können.
Was spricht gegen die Verwendung des Google-Kontos oder des Facebook-Profils (möglicherweise beides!) Zur Implementierung des Anmeldesystems? Es ist weniger wahrscheinlich, dass Benutzer diese Anmeldeinformationen teilen ...
Fünfzehn antworten:
Philipp
2015-11-16 16:08:35 UTC
view on stackexchange narkive permalink

Was Sie versuchen zu tun, ist zwecklos. Informationen können nicht enthalten sein. Sie können nicht verhindern, dass jemand Informationen weitergibt. Wenn sie ihre Anmeldungen nicht freigeben können, kopieren sie einfach &paste den Text. Wenn Sie copy&pasting deaktivieren (die gängigen Methoden hierfür können übrigens leicht umgangen werden), werden Screenshots erstellt. Wenn Sie einen Weg finden, Screenshots unmöglich zu machen (mir fiel keiner ein), werden sie sich gegenseitig vorlesen. Alles, was Sie erreichen, ist, die Benutzererfahrung für legitime Benutzer zu beeinträchtigen, ohne Missbrauch wirklich zu verhindern.

Wenn Sie diesen Weg jedoch wirklich beschreiten möchten, sollten Sie nach alternativen Möglichkeiten für den Fingerabdruck von Browsern suchen als nach IP-Adresse und Cookies. Es gibt viele andere Informationen, die ein Webbrowser auf jeder Seitenanforderung überträgt, und oft sind sie ausreichend eindeutig, um einen Benutzer zu identifizieren. Die Electronic Frontier Foundation hat eine interessante Demo mit ihrer Panopticlick -Website.

Folgende Techniken werden verwendet:

  • UserAgent-Zeichenfolge (Selbstidentifizierung des Browsers )
  • HTTP_ACCEPT-Header
  • Installierte Plugins und ihre Versionsnummern
  • Installierte Schriftarten
  • Zeitzone
  • Bildschirmgröße und Farbtiefe
  • Alternative Cookie-Techniken (lokale Speicherung, dauerhafte Speicherung in Plugins wie Flash)
  • Beachten Sie, dass all diese Identifikationsmethoden aufgrund vieler von ihnen zu falsch negativen Ergebnissen neigen kann jederzeit geändert werden. Sie sollten einen Fingerabdruck nur dann als von einem neuen Gerät stammend betrachten, wenn sich mehrere Eigenschaften gleichzeitig drastisch ändern. Wenn der Unterschied zum vorherigen Geräteprofil gering ist, sollten Sie stattdessen den Gerätefingerabdruck stillschweigend aktualisieren.

    * Beachten Sie, dass alle diese Identifikationsmethoden zu falsch negativen Ergebnissen neigen, da sich viele von ihnen jederzeit ändern können. * => Um dies und Geräteänderungen zu berücksichtigen, würde ich eine Verfallsrichtlinie anstreben. Durch einfaches Beibehalten von Geräten nur für einen "kurzen" Zeitraum (z. B. eine Woche) können Benutzer ihre Plugins und Geräte aktualisieren.
    @MatthieuM. Wenn ich also ein Plugin aktualisiere oder eine Schriftart installiere, kann ich Ihre Website eine Woche lang nicht verwenden? Weißt du was? Ich habe nur beschlossen, dass ich deine Website sowieso nicht nutzen möchte. (Besser als der aktuelle Vorschlag von permanent, aber Sie können sehen, wie das Problem bleibt.)
    @Bob: Natürlich nicht, das wäre dumm ... es muss mit einer begrenzten Anzahl von Geräten> 1 kombiniert werden. Das OP schlug 2 Geräte mit permanenter Registrierung vor, um auf dem gleichen Niveau zu sein, würde ich 3 Geräte mit einer Woche anstreben ( zum Beispiel) Abschreibungspolitik. Die Verfallsrichtlinie darf nicht zu kurz sein (mit 1 Stunde können Sie jeden Ihren Schlüssel benutzen lassen, 1 Stunde warten und ihn selbst benutzen) und dann können Sie auf der Anzahl der Geräte spielen. Und im Idealfall würden Sie es mit dem Cookie-Ansatz kombinieren, um ein aktualisiertes Gerät zu erkennen. Sie müssen jedoch bereit sein, wenn Cookies gelöscht wurden.
    Wenn auf die Website von Schulcomputern aus zugegriffen wird, sehen alle Computer genau gleich aus.
    FWIW haben wir unsere mobile App auf die Verwendung auf einem einzelnen iPad durch ein Benutzerkonto beschränkt. Bevor ein Mitarbeiter die App auf seinem iPad installieren kann, melden Sie ihn als sich selbst an, und der Verwandte erhält aktuelle Änderungsdaten, die für ihn sensibel sein können. Mit der Einschränkung kann der Mitarbeiter die Daten weiterhin weitergeben, dies ist jedoch viel weniger praktisch, sodass wir mit unserer Lösung zufrieden sind. Es hängt alles davon ab, wie weit Sie gehen wollen / müssen.
    Dmitry Grigoryev
    2015-11-16 18:57:46 UTC
    view on stackexchange narkive permalink

    Zusätzlich zu den vorhandenen Antworten möchte ich nur betonen, dass Cookies nicht als zuverlässiger, dauerhafter Speicher gedacht sind. Sie können bei vielen Gelegenheiten gelöscht werden, ohne die Zustimmung des Benutzers einzuholen, z. B. nach einem Browserabsturz, einem Upgrade oder einer Profilbeschädigung.

    Sie können nicht einfach ein faire Warnung an Ihre Benutzer und erwarten Sie, dass diese die Cookies behalten. Es ist einfach nicht unter ihrer Kontrolle.

    Was Benutzer wirklich davon abhalten könnte, ihre Anmeldeinformationen zu teilen, ist die Möglichkeit des Missbrauchs (z. B. werde ich Ihnen niemals mein SO-Passwort geben, nicht unbedingt, weil die Allgemeinen Geschäftsbedingungen dies sagen, aber weil du es missbrauchen kannst, indem du dich als ich ausgibst). Überprüfen Sie, ob die Schüler bereits über ein von der Schule verwaltetes Konto verfügen (z. B. Schul-E-Mail, Intranet usw.) und ob Sie die Authentifizierung an dieses vorhandene System delegieren können (damit sich die Schüler mit ihrer Schul-E-Mail anmelden können und Passwort als Anmeldeinformationen). Es ist unnötig zu erwähnen, dass die Schüler solche Anmeldeinformationen wahrscheinlich nicht mit Freunden teilen werden, damit sie den Laden sehen.

    Selbst wenn keine von der Schule verwalteten Konten vorhanden sind (z. B. Schüler verschiedener Schulen), können Sie ihre Facebook-, Twitter- und Google + -Konten über die entsprechenden Authentifizierungs-APIs verwenden. Diese möchten sie wahrscheinlich auch nicht freigeben.
    Ist es ein großes Problem, ein gefälschtes Facebook-Konto zu erstellen? Oder melden Sie sich einfach mit einem Facebook-Account von jemandem an, der diese Schule nicht besucht?
    Im Allgemeinen ist dies natürlich nicht der Fall, aber es kann sein, dass man übereinstimmende Namen auf dem Konto und die Kreditkarte benötigt, mit der der Zugang bezahlt wird. Es ist weitaus weniger machbar zu erwarten, dass das Schulauthentifizierungssystem ohnehin für die Verwendung durch Dritte geöffnet ist.
    +1 für eine wirklich praktische Lösung. Außerdem könnte eine Liste von Facebook- oder Google Mail-Konten von Studenten db abgerufen werden, wenn ein solches SSO-System fehlt.
    smitelli
    2015-11-16 21:24:38 UTC
    view on stackexchange narkive permalink

    Abgesehen von der Tatsache, dass dies zwecklos ist, was bereits festgestellt wurde, gibt es einen zusätzlichen Weg, der in Betracht gezogen werden könnte: die obligatorische Zwei-Faktor-Authentifizierung. Wenn Sie von jedem Anmeldekonto verlangen, dass es ein 2FA-Token (Google Authenticator usw.) registriert oder einfach auf einen Bestätigungslink klickt, der über einen Seitenkanal gesendet wurde, wenn es sich um einen anderen Benutzer handelt, kann dies die Eintrittsbarriere erhöhen.

    Dies würde meine Antwort sein. Sie können Google Authenticator oder Authy kostenlos verwenden oder eine Textnachricht mit einem Code an ihr Handy senden (möglicherweise hat nicht jeder Teenager ein Smartphone). Beschränken Sie sich nicht auf 2 Geräte - es ist ein zu großer Aufwand. Wie Sie sagten, was ist, wenn sie upgraden? Klare Kekse? Benötigen Sie Kundenunterstützung dafür. Großer Aufwand.
    Und der Freigabe-Benutzer-1 versucht sich anzumelden, sendet eine SMS an den Eigentümer-Benutzer, der das Google Auth-Token zurücksendet. Besiegt!
    @ThoriumBR "Erhöhen Sie die Eintrittsbarriere", nicht "verhindern". :-P
    Zumindest für HOTP / TOTP-basierte 2FA-Token können Sie den Schlüssel einfach zwischen Freunden teilen.
    GrandOpener
    2015-11-17 04:34:59 UTC
    view on stackexchange narkive permalink

    Wenn Ihre Frage lautet: "Funktioniert das?", lautet die Antwort "Nein". Ohne zusätzlichen Fingerabdruck ist es für Schüler ziemlich trivial, nur die Cookie-Daten zu teilen, wodurch Ihr Schema völlig machtlos wird. (Und wenn Sie zusätzliche Fingerabdrücke haben, benötigen Sie das Sitzungscookie nicht wirklich.)

    Wenn Ihre Frage lautet "Ist das eine gute Idee?", Lautet die Antwort immer noch Nein. stark> Abgesehen davon, dass Sie nicht das erreichen, was Sie wollen, verursacht dies Probleme für legitime Benutzer. Dieses Schema ist in jeder messbaren Weise schlechter, als nur die Schüler zu bitten, die Konten nicht zu teilen.

    Wenn Ihre Frage lautet: "Kann dies besser gemacht werden?" Entschuldigung, aber die Antwort ist immer noch nein. Einige Formen des Fingerabdrucks, wie in der Antwort von @Philipp erwähnt, können Ihnen dabei helfen, besser zu verfolgen, wie viele eindeutige Benutzer auf Ihre Inhalte zugreifen, und möglicherweise sogar zu steuern, wie viele direkt darauf zugreifen. Wie bereits erwähnt, handelt es sich um eine ungenaue Wissenschaft, die nicht vollständig korrekt ist.

    Das Problem dabei ist jedoch, dass Ihr erklärtes Ziel nicht darin besteht, zu kontrollieren, wie viele Benutzer direkt auf die Informationen zugreifen ;; Es ist, wie viele überhaupt auf die Informationen zugreifen. Sie können dies manchmal über DRM schwieriger / ärgerlicher machen, aber es ist buchstäblich nicht möglich, die Daten mit technologischen Maßnahmen vollständig sicher einzuschränken. Sobald die Schüler Zugriff auf die Daten haben, können Sie sie nicht mehr daran hindern, diese Daten außerhalb Ihres Dienstes weiterzugeben. (Hinweis: Das Hinzufügen von DRM ist wahrscheinlich nicht nur ein viel größeres Projekt als erhofft, sondern es ist auch vor allem für Binärdaten wie ausführbare Dateien oder Videos nützlich. Wenn ein erheblicher Teil Ihrer privaten Daten Text ist, ist dies möglicherweise nicht der Fall in der Lage sein, überhaupt viel zu tun.)

    Die beste Lösung besteht darin, die Schüler einfach zu bitten, dies nicht zu tun. Wenn Sie den Schülern keine privaten Daten anvertrauen können, sollten Sie die Daten überhaupt nicht verfügbar machen.

    Wenn Sie immer noch entschlossen sind, dies zu tun (ich hoffe, Sie sind es nicht), ist meine Empfehlung, dass das Beste, auf das Sie hoffen können, darin besteht, fiktive Einträge aufzunehmen in den Daten, die programmgesteuert basierend auf den Benutzerkonten der Schüler generiert werden. Das hindert die Schüler nicht daran, Daten zu teilen, aber wenn die Daten irgendwo auftauchen, wo sie nicht sein sollen, haben Sie möglicherweise zumindest die Möglichkeit, herauszufinden, wer sie ursprünglich geteilt hat.

    david
    2015-11-16 22:00:12 UTC
    view on stackexchange narkive permalink

    Sie erwähnen Netflix, aber es gibt wichtige Unterschiede zwischen Ihrem Vorschlag und Netflix. Netflix erzwingt ein Limit für die Gesamtzahl der Geräte, die gleichzeitig "vorautorisiert" werden können, dh wenn der Benutzer kein Kennwort oder keinen Autorisierungscode erneut eingeben muss, das Limit jedoch höher ist (war 6; kann jetzt 50 sein), und wenn der Benutzer das Limit erreicht, lehnt er die neue Autorisierung nicht ab, sondern deaktiviert nur das zuletzt verwendete Gerät. Außerdem wird ein Limit von nur einem Gerät (oder zwei oder vier, je nach Konto) erzwungen, das tatsächlich gleichzeitig ein Video streamt.

    Beachten Sie auch, dass Sie nur ein Cookie verwenden, um ein Gerät zu identifizieren Ein Benutzer mit einem einzelnen Computer, der zwischen Browsern wechselt (z. B. IE und Firefox oder IE und Chrome oder IE und Opera oder Chrome und Firefox), verwendet anscheinend zwei Geräte. Wenn der Benutzer den technischen Support für eine Anwendung anruft und die Meldung "Cookies löschen" erhält (ein häufiger erster Schritt), wird anscheinend ein neues Gerät verwendet. Sogar die Android-Tablets meiner Kinder haben zwei Browser, den Android-Standardtablett und Chrome.

    Wenn der "Inhalt" Bilder oder Text ist, ist es so gut wie unmöglich zu verhindern, dass er kopiert wird, im schlimmsten Fall von a Kamera auf den Bildschirm gerichtet.

    Ihr Vorschlag weist also zumindest unter dem Gesichtspunkt der Benutzerfreundlichkeit einen offensichtlichen Fehler auf.

    sir_k
    2015-11-16 15:54:32 UTC
    view on stackexchange narkive permalink

    Lassen Sie mich damit beginnen: Ich glaube nicht, dass Ihre Lösung Ihnen in irgendeiner Weise dabei helfen wird, zu verhindern, dass sie das, was sich auf dieser Website befindet, mit Freunden teilen.

    Warum?
    Was ist, wenn sie eine Bildschirmfreigabe durchführen und ihnen dann zeigen, was sich auf dieser Site befindet? In Bezug auf das Teilen können Sie das nicht aufhalten. Sie können Screenshots machen, Inhalte ausdrucken, Videos aufnehmen usw.
    Die Alternative
    A: Eine Möglichkeit, dies zu tun, besteht darin, den Webshop auf nur zu beschränken im Schulnetzwerk, auf den Schul-PCs verfügbar sein. Der Grund, warum Sie dies tun möchten, ist, dass Sie:

    1. steuern können, wer sich anmeldet.
    2. Steuern Sie den PC und stellen Sie sicher, dass keine Inhalte freigegeben werden können.
    3. ol>

      Abgesehen davon können sie immer noch Bilder mit ihren Handys aufnehmen und auf diese Weise Inhalte teilen.

      B: Der Aufwand und Die von Ihnen eingerichtete Sicherheit sollte in direktem Zusammenhang mit dem stehen, was Sie schützen möchten. Vielleicht möchten Sie die gesamte supersichere Web-App überdenken und es den Nutzern ermöglichen, sich regelmäßig anzumelden und dringend vom Teilen abzuraten. Sie können dann eine "Überprüfung" der Aktivität durchführen. Wenn Personen ihre Konten nicht auf legitime Weise verwenden, beschränken Sie den Zugriff über den Webshop.

    TTT
    2015-11-16 23:21:39 UTC
    view on stackexchange narkive permalink

    Ich habe einen ähnlichen Mechanismus auf einer meiner stark frequentierten Websites mit kostenpflichtigen Inhalten implementiert. Ich habe es mit Browsersitzungs-Cookies erreicht. Das aktuelle Sitzungscookie wird in der Datenbank gespeichert. Wenn sich das aktuelle Cookie ändert, weil sich die Person von einem anderen Ort aus angemeldet hat, muss sich die erste Sitzung erneut anmelden. Dies würde nicht unbedingt die Freigabe von Anmeldeinformationen verhindern, verhindert jedoch, dass mehrere Benutzer die Site gleichzeitig verwenden. Wenn sich zwei oder mehr Benutzer dafür entscheiden, die Site gleichzeitig zu nutzen, muss sich jeder bei jedem Seitenbesuch ständig neu anmelden, was wahrscheinlich ärgerlich genug wäre, um dies zu verhindern. Irgendwann hat der ursprüngliche Kontoinhaber die Nase voll und ändert sein Passwort und teilt es nicht erneut.

    Nachdem wir einige Tests mit dieser Funktion durchgeführt haben, haben wir uns entschlossen, es zu deaktivieren. Wir haben dies aus mehreren Gründen getan:

    1. Die Funktion verursachte unseren vorhandenen Benutzern mehr Kopfschmerzen als ihre Nützlichkeit bei der Verhinderung der gemeinsamen Nutzung von Konten. Viele unserer Benutzer wollten unsere Website sowohl zu Hause als auch am Arbeitsplatz nutzen und möchten sich nicht mehrmals am Tag neu anmelden müssen. Es ist noch schlimmer, wenn sie es auf ihrem mobilen Gerät oder mit mehreren Browsern verwenden. Wir haben überlegt, die Anzahl der zulässigen Sitzungen zu erhöhen, haben uns aber dagegen entschieden.
    2. Unser Produkt ist so günstig, dass die meisten Leute lieber auf eigene Rechnung bezahlen, als sich die Mühe zu machen, es zu teilen.
    3. Wir Ich weiß, dass einige Leute teilen, und es ist uns einfach egal. Der größte Teil des Anteils, den wir sehen, stammt aus Ländern, in denen unser Produkt aufgrund seiner Einkommensstandards als teuer angesehen werden kann. Ich habe kein Problem damit, dass Freunde aus diesen Ländern zusammenkommen und als Team für unser Produkt bezahlen. Wir werden wahrscheinlich sowieso keinen Umsatz verlieren, wenn sich jeder Einzelne den Preis nicht selbst leisten könnte.
    4. ol>
    Thomas W
    2015-11-17 03:23:46 UTC
    view on stackexchange narkive permalink

    Etwas anders als die geringfügigen Antworten, aber ich schlage vor, dem Benutzerkonto einige sehr persönliche Informationen hinzuzufügen, damit der Schüler nicht sein / ihr Passwort teilen möchte.

    Verknüpfen Sie beispielsweise ihr Konto mit der Datenbank für Schulnoten: Sie möchten nicht, dass jemand in Ihre Noten eintaucht. Fügen Sie außerdem Dinge wie Telefonnummer, Alter, Adresse, Elternnamen usw. hinzu. Diese können nicht vom Benutzer selbst , sondern nur von der zuständigen Schule geändert werden.

    Meine Schule verwendet auch so: meine schule hat eine website, auf der sie aufsätze einreichen kann (zB) und um das teilen von passwörtern zu verhindern, verknüpfen sie diese mit ihrem zeitplan, marken, persönlichen details usw.


    andere sagten, eine vollständige Identifizierung und Unterscheidung von Personen / Konten sei unmöglich . Viel Glück!

    Steve Sether
    2015-11-17 03:55:32 UTC
    view on stackexchange narkive permalink

    Was Sie vorschlagen, funktioniert nicht. Benutzer verwenden unterschiedliche Browser, wechseln in den Datenschutzmodus, melden sich bei einem Arbeitscomputer an, melden sich von ihrem Telefon aus an und melden sich ständig von einem anderen Computer an. Die Leute werden aufgefordert, ständig Cookies zu löschen, um andere Probleme zu beheben. Ich selbst habe mehrere Computer und benutze mehrere Browser. Ihre Website wäre für mich innerhalb von ein oder zwei Tagen völlig unbrauchbar. Ihre Website wird im Wesentlichen sehr schnell unbrauchbar und die Schüler werden Sie mit Anfragen bombardieren, sich ständig anzumelden. Cookies machen einen wirklich schrecklichen dauerhaften Speicherplatz, weil sie niemals dauerhaft sein sollten!

    Netflix steuert tatsächlich, wie viele Dämpfe ein einzelner Benutzer gleichzeitig streamen kann. Aber sie tun dies aktiv und verlassen sich nicht nur einfach auf einen Cookie, der immer bestehen bleibt. Wenn Sie die Anzahl der Anmeldungen wirklich steuern müssen, müssen Sie die Anzahl der AKTIVEN Anmeldungen verfolgen. Das bedeutet, zu verfolgen, ob die Browserseite geöffnet ist, und nicht nur einen einfachen Cookie-Ansatz. Eine Möglichkeit, dies zu tun, besteht darin, Javascript auf Ihrer Website auszuführen, das aktiv einen Ping an den Server zurücksendet. Wenn der Ping nicht mehr empfangen wird, deaktivieren Sie diese Anmeldung.

    Wenn Sie aktive Anmeldungen nicht nachverfolgen, befinden Sie sich in einer Welt voller Verletzungen. Sie denken vielleicht, Sie können dies für eine Weile vortäuschen, weil Sie klein sind, aber Ihre Website wird immer noch nicht verwendet werden können, und alles nur, weil Sie versuchen, zu verhindern, dass Personen Anmeldungen freigeben.

    ErikE
    2015-11-17 04:55:10 UTC
    view on stackexchange narkive permalink

    Stellen Sie sicher, dass die für jede Person eindeutigen Anmeldeinformationen Zugriff auf private Informationen gewähren, die die Person nicht mit anderen Personen teilen möchte. Kreditkarteninformationen, Noten, Privatadresse, Telefonnummer, private E-Mail-Adresse usw. Ermöglichen Sie Einkäufe, die dem Schüler später in Rechnung gestellt werden, aber an eine beliebige Adresse gesendet werden können. Und so weiter.

    Dies stellt dann einen großen Anreiz für die Benutzer dar, ihre Anmeldeinformationen geheim zu halten, und überwacht sich selbst. Zum Beispiel wird niemand seine Bankdaten an eine andere Person weitergeben.

    Dies kann nicht nur erreicht werden, indem die vertraulichen Informationen in der Anwendung bereitgestellt werden, sondern auch, indem die Wiederverwendung eines funktionierenden Logins erzwungen wird Ein anderes System, das diese Informationen bereitstellt - vielleicht sogar auf eine Art OpenID-Art.

    Um auf die Idee zu reagieren, dass Schüler nicht sehr sicherheitsbewusst sind, bin ich überzeugt, dass es einen Weg gibt, dies zu tun das wird funktionieren. Fügen Sie die vertraulichen Informationen auf der Startseite und oben auf jeder Seite ein (oder zumindest einen Link, der direkt dorthin führt, groß und deutlich gekennzeichnet).

    Jeder Schüler, der feststellt, dass seine Informationen verwendet werden oder seine Wenn Sie Ihr Konto ändern, müssen Sie sich beeilen, um Sie zu informieren und den Zugriff auf andere zu sperren.

    Studenten sind möglicherweise nicht das sicherheitsorientierteste Publikum, daher kann dieser Plan immer noch nach hinten losgehen.
    loneboat
    2015-11-17 21:25:24 UTC
    view on stackexchange narkive permalink

    Ein ähnliches Problem, das Amazon lösen musste, betrifft die Funktion " Haushalte". Mit Amazon können Sie Konten beitreten, um einige Vorteile von Amazon Prime zu nutzen (z. B. kostenloser 2-Tage-Versand). Es ist beabsichtigt, dass ein Haushalt Prime nur einmal kaufen muss. Dies kann jedoch offensichtlich missbraucht werden, wenn Personen Konten mit Freunden verbinden und die Kosten für Prime aufteilen können.

    Amazon verringert dieses Problem durch Zahlungsmethoden Teil der freigegebenen Konten - so kann jeder, mit dem Sie einem "Haushalt" beitreten, auch Ihre Zahlungsmethoden anzeigen und verwenden. Ich weiß, dass ich ohne dies versucht wäre, Konten mit zufälligen Freunden zu teilen, aber jetzt, da die Zahlungsmethoden geteilt werden, bin ich plötzlich viel wählerischer, mit wem ich sie teile!

    Chirag Bhatia - chirag64
    2015-11-17 00:03:42 UTC
    view on stackexchange narkive permalink

    Viele Unternehmen verwenden einen Zwei-Faktor-Authentifizierungsansatz, bei dem der Benutzer einen SMS-Code für eine vorregistrierte Telefonnummer erhält, mit dem er sich bei der Eingabe von Anmeldeinformationen anmeldet.

    Dies ist zwar eine Sicherheitsmaßnahme, hat dies jedoch Ein Nebeneffekt, der es schwierig (wenn nicht unmöglich) macht, Anmeldeinformationen für mehrere Benutzer freizugeben. Fügen Sie diesem Sitzungsablauf auch alle paar Stunden hinzu, je nachdem, wie häufig sich Benutzer auf Ihrer Website anmelden.

    Sie können Cookies auch verwenden, um herauszufinden, ob bei einem Benutzer mehrere Sitzungen gleichzeitig angemeldet sind. Dies kann darauf hindeuten Der Benutzer hat seine Anmeldeinformationen geteilt.

    Dies ist offensichtlich keine perfekte Lösung für Ihr Problem, aber es ist eine praktikable Lösung, die angewendet werden kann, um die Wiederverwendung von Anmeldeinformationen für mehrere Benutzer zu erschweren.

    Wie können sie Cookies verwenden, um mehrere Anmeldungen zu erkennen?
    Count Iblis
    2015-11-17 03:05:12 UTC
    view on stackexchange narkive permalink

    Sie können ein System entwickeln, in dem sich Benutzer mithilfe der biometrischen Überprüfung anmelden können. Z.B. Mit der Webcam kann ein Bild aufgenommen werden, und dann extrahiert die Software Daten aus den Daten, die für dieselbe Person eindeutig sind und sich über Zeitskalen in der Größenordnung von einigen Jahren nicht ändern.

    sebastian nielsen
    2015-11-17 16:17:26 UTC
    view on stackexchange narkive permalink

    Ich würde IP-Bereiche vorschlagen. Dies bietet einen ausreichenden Schutz gegen die gemeinsame Nutzung von Konten, ermöglicht jedoch weiterhin IP-Änderungen.

    Der gültige IP-Bereich für den betreffenden Benutzer kann durch eine automatische Suche bei WHOIS ermittelt werden. (Tatsächlich ist WHOIS so konzipiert, dass automatische Suchvorgänge möglich sind.) Sie können dann eine IP wie 94.254.51.234 anfordern und eine Antwort wie 94.254.0.0 - 94.254.127.255 zurückerhalten. Anschließend fügen Sie der Authentifizierungsdatenbank den Eintrag "94.254.0.0 - 94.254.127.255" hinzu.

    Dies muss nur jedes Mal erfolgen, wenn sich ein Benutzer von einem "nicht autorisierten" Gerät aus anmeldet, und die autorisierte Anzahl von Geräten ist kleiner als 2.

    Zusätzlich können Sie festlegen, dass die Anmeldung von Schulcomputern "Immer kostenlos" ist, z. B. muss die Autorisierung nicht beeinflusst werden.

    Dadurch wird die Das System spielt also keine Rolle, was der Benutzer auf dem Client-Computer tut (wie das Löschen von Cookies), und ermöglicht es dem Benutzer, sich von einer unbegrenzten Anzahl von Geräten in einem bestimmten Heim (wie Tablet, PC, Handy usw.) anzumelden.

    Das Limit von 2 IP-Bereichen ist dann ziemlich gut, da sich der Benutzer normalerweise von zu Hause, vom Handy und von der Schule aus anmeldet. Dann wären Heim und Handy "autorisierte" Geräte, und die Schule ist ein "kostenloses" Gerät.

    Eine andere Möglichkeit besteht darin, dem Benutzer einen Yubico U2F-Token zu geben (dieser wird bei Yubico für 18 US-Dollar verkauft), der ersetzt wird den Benutzernamen / das Passwort. Sie erhalten nur EINEN Token, und das Registrieren eines neuen Tokens kostet etwa 50 $. Dann ist es sehr viel schwieriger, den Zugriff zu teilen, als nur einen Benutzernamen / ein Passwort über das Telefon zu teilen. In Kombination mit der IP-Bereichsbeschränkung würde es sehr schwierig sein, den Zugriff gemeinsam zu nutzen.

    Prinsig
    2015-11-18 01:44:58 UTC
    view on stackexchange narkive permalink

    BEARBEITEN: Kurz gesagt, Ihre Lösung ist schlecht. Hier ist eine Alternative.

    ...

    Soweit ich weiß, handelt es sich um ein häufiges Problem, das auf ungewöhnliche Weise auftritt.

    Multi-Faktor-Authentifizierung? Sie geben ihnen eine regelmäßige Anmeldung. Wenn sie versuchen, sich anzumelden, senden Sie ihnen Text mit einem zufälligen 5-stelligen (oder einem beliebigen) Code, den sie dann eingeben müssen.

    Dies bedeutet, dass bei der Anmeldung zwei Faktoren berücksichtigt werden diese Person in:

    • Etwas, das Sie kennen (der Benutzername & Passwort)
    • Etwas, das Sie haben (das mit dem Konto verknüpfte Mobiltelefon).

    Da es sich um eine Schule handelt, die möglicherweise vertrauliche Informationen enthält, sollte dieser Ansatz allgemein verwendet werden (da gemeinsam genutzte Laufwerke in der Schule häufig Fotos und dergleichen enthalten).

    Dieser Ansatz ist recht einfach Implementierung über eine SMS-API.

    HINWEIS: Zusätzlich kann ein E-Mail-Link mit einer Bestätigung funktionieren - ein Schmerz, aber wenn die Sicherheit von Kindern hier Ihre Priorität ist, sind Sie möglicherweise bereit, diesen Weg einzuschlagen.



    Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 3.0-Lizenz, unter der er vertrieben wird.
    Loading...