Folgendes ist eine im Internet sehr häufig auftretende Situation: Ein Nutzer besitzt bei einem beliebigen Social-Media-Dienst ein Nutzerkonto. Bei diesem Dienst hat der Nutzer Daten – zum Beispiel Bilddateien – hochgeladen. Der Nutzer möchte einer Drittanwendung Zugriff auf diese Daten gewähren.
Da es hierfür keine bessere Lösung gab, wurde dieses Problem in den dunklen Zeiten des Internets durchaus dadurch gelöst, dass der Nutzer einfach der Drittanwendung seine Zugangsinformationen übergeben hat. Diese hat sich damit als Nutzer beim Dienst authentifiziert und konnte somit den Zugriff auf die betroffenen Daten erhalten. Hieraus ergibt sich eine Reihe von Problemen.
Da die Drittanwendung als der Nutzer agiert, kann der Dienst diese nicht vom Nutzer unterscheiden. Die Drittanwendung hat also alle Berechtigungen, die der Nutzer auch hat. Es kann keine Eingrenzung stattfinden und es ist nicht möglich, nur einer der Drittanwendungen diese Berechtigungen zu entziehen.
Der zweite große Aspekt stellt konkrete Sicherheitsprobleme dar. Das Passwort muss für diesen Anwendungsfall rekonstruierbar (als Klartext oder verschlüsselt) vorgehalten werden. Dies ist aus Sicherheitsgründen nicht vertretbar. Zusätzlich ist das Passwort an mehreren Stellen vorhanden, was das Risiko der Kompromittierung erhöht. Wird das Passwort an einer Stelle kompromittiert, wirkt sich dies auf Nutzer, Dienst und alle Drittanwendungen aus.
Diese Probleme sollen durch die Standards OpenID Connect und OAuth2.0 behoben werden.