Dr. Veikko Krypczyk Selbstständig

Das Thema Benutzeridentifizierung lässt den App-Programmierer nicht los. Die Liste der Anforderungen ist lang. Besonders gefragt ist die Benutzeranmeldung mithilfe von Google, Facebook und Co.

Olena Bochkor Selbstständig

Azure App Service als Cloud-Dienst vereinfacht die Vorgänge rund um den Anmeldeprozess erheblich. Insbesondere Standardaufgaben lassen sich damit schnell umsetzen.

Apps greifen auf Daten aus vielfältigen Quellen zurück. Einige wenige Datenquellen können anonym „angezapft“ werden. Für andere Quellen muss man sich „ausweisen“. Insbesondere beim Zugriff auf Unternehmensdaten muss man den Nutzer eindeutig identifizieren. Eine umfassende Nutzerverwaltung eigenständig zu implementieren, ist kaum zu leisten. Muss man auch nicht! Wunderbar geeignet sind die Dienste von Azure.

Der Erfolg von mobilen Apps lässt sich u. a. auf zwei Faktoren zurückführen: Sie sind für eine bestimmte Aufgabe spezialisiert und sie erlauben den schnellen Datenaustausch mit den unterschiedlichsten Quellen. Nur wenige Daten, wie das Wetter oder die Börsenkurse, sind frei verfügbar. In der Regel handelt es sich um schützenswerte Daten, die auf den Servern von Unternehmen oder Serviceanbietern vorgehalten werden. Auch bei Kommunikations- und Social-Media-Anwendungen findet der Datenaustauch mit anderen Benutzern nicht direkt, sondern über zwischengeschaltete Serverdienste statt. Um Apps mit einer solchen Funktionalität nutzen zu können, müssen sich deren Benutzer identifizieren.

Als erfahrener Anwendungsentwickler werden Sie jetzt denken: Was für ein alter Hut – denn bereits vor Jahren mussten wir eine Benutzerverwaltung für einzelne Programme realisieren. Die grundsätzliche Implementierung ist Ihnen also im Wesentlichen vertraut. Jedoch sind die Anforderungen im Bereich der App-Programmierung recht umfassend. Folgende Services sind üblich:

  • Benutzerautorisierung und Benutzeridentifizierung
  • Benutzerverwaltung
  • Identifikation mithilfe von Identity-Providern
  • Zuweisung von Berechtigungen

Will man diese Dinge programmiertechnisch eigenständig realisieren, hat man gut zu tun. Das ist heute in der Regel aber auch nicht mehr notwendig: Es gibt entsprechende Servicedienste, also Cloud-Angebote, dafür. Wirklich gut aufgestellt und für eine Vielzahl von Technologien geeignet sind die Angebote von Microsoft Azure. Obgleich es sich um einen Dienst von Microsoft handelt, ist man mit dem Mobile Apps Service ausdrücklich nicht auf Windows-Systeme beschränkt. Android (Java), iOS (Swift), hybride Lösungen, Web-Apps und plattformübergreifende Ansätze werden genauso unterstützt. Im ersten Teil dieser zweiteiligen Artikelserie stellen wir Ihnen zunächst den technologischen Hintergrund vor. Konkrete Hinweise zur Implementierung folgen dann in der nächsten Ausgabe.

Artikelserie

  • Teil 1: Die Hintergründe zur Benutzeridentifizierung und -autorisierung
  • Teil 2: Konfiguration des Azure-Portals und Implementierung auf Clientseite

Benutzerautorisierung und Benutzeridentifizierung

Die Benutzer müssen sich eindeutig am System identifizieren. Dazu muss im Vorfeld festgelegt werden, welche Verfahren akzeptiert und welche Daten dazu notwendig sind. Die Begriffe werden immer wieder verwechselt. Folgende grundsätzliche Vorgänge kann man dabei unterscheiden:

  • Identifizierung: A informiert B über seine Identität
  • Authentisierung: A übergibt Informationen, die eine Verifizierung seiner Identität durch B erlauben
  • Authentifizierung: B überprüft, ob die vorgegebene Identität durch die Authentisierungsdaten bestätigt werden kann
  • Autorisierung: B lässt nach erfolgreicher Authentifizierung den Zugriff auf die angeforderte Ressource zu

Mit Blick auf die Programmierpraxis kann man das Prozedere deutlich konkretisieren. Der Benutzer bekommt üblicherweise nach dem Start der App eine oder mehrere alternative Optionen, sich anzumelden. Sind die Anmeldedaten korrekt, darf er mit der App arbeiten. In welchem Umfang er auf Daten zugreifen oder sie ändern bzw. löschen darf, ist eine Frage der Berechtigungen. Werden die Anmeldedaten als nicht zu treffenden klassifiziert, wird er abgewiesen. Meist hat er dann noch mehrfach die Möglichkeit, es zu probieren. Wird zu einer Benutzerkennung (Benutzername, E-Mail-Adresse) mehrfach das falsche Passwort eingebeben, erfolgt aus Sicherheitsgründen eine temporäre oder dauerhafte Sperrung des Kontos. Die Entsperrung des Kontos bzw. die Neuvergabe sind Themen der Benutzerverwaltung.

Den vollständigen Artikel lesen Sie in der Ausgabe:

Windows Developer 6.17 - "ASP.NET Core im Einsatz"

Alle Infos zum Heft
579797394User-Management mit Microsoft Azure App Services
X
- Gib Deinen Standort ein -
- or -