Authentifikation vs. Autorisation

In meinem ersten Beitrag hatte ich angekündigt, dass ich mich als erstes mit den Begriffen Authentifikation und Autorisation beschäftigen möchte. Mir fällt immer wieder auf, dass diese beiden Begriffe oft zusammen auftauchen, aber von vielen Menschen falsch oder sogar synonym verwendet werden. Dies führt im (Arbeits-)Alltag häufig zu Missverständnissen bei allen Beteiligten. Daher möchte ich hier mal grundlegend die beiden Begriffe voneinander abgrenzen und den Unterschied verständlich darstellen.

Authentifikation

Die Authentifikation lässt sich bspw. mit der Passkontrolle am Flughafen vergleichen. Bevor ich in ein Land einreisen kann, muss meine Identität geprüft und bestätigt werden. Ich könnte ja einfach sagen, ich bin übrigens Herr Schmidt aus Berlin. Der Beamte wird mir das aber nicht glauben, weil das könnte ja jeder behaupten. Stattdessen muss er meine Identität feststellen. Mir als Person kann er nicht vertrauen, aber er vertraut anderen Staaten, die Reisedokumente ausstellen. Anhand von meinem (gültigen) Reisepass kann ich nun meine Identität bestätigen und der Grenzbeamte kann dies auch überprüfen.

Bei Informationssystemen (bspw. Webanwendungen), muss ebenfalls meine Identität festgestellt werden. Die Authentifikation kann dabei mittels verschiedener Faktoren erfolgen. Der bekannteste Authentifikationsfaktor ist sicher Benutzername und Passwort. Das bedeutet man geht davon aus, dass jemand, der den Benutzernamen und das dazugehörige Passwort kennt, sicher die Identität ist, die der Anwender vorgibt zu sein. Wenn jemand anderes dieses Passwort kennt oder errät, kann er in dem Fall die Identität des Anwenders annehmen. Weitere Faktoren, die zur Authentifikation dienen können, sind Client-Zertifikate, zusätzliche zur Anmeldung notwendige Sicherheitscodes per SMS oder mobiler App, oder auch biometrische Merkmale wie Fingerabdruck oder Gesicht. [1]

Autorisation

Bei der Authentifikation geht es somit ausschließlich um die Indentitätsfeststellung des Anwenders. Es wird dabei nicht entschieden, welche Rechte oder Zugriffe innerhalb der Anwendung für den Anwender möglich bzw. verboten sind. Die Steuerung von Zugriffen und das Erteilen von Berechtigungen ist die Autorisation. [2]

Oft hängt die Autorisation mit der Authentifikation zusammen. Nur wenn die Anwendung weiß, wer der Anwender ist, kann die Entscheidung getroffen werden, welche Funktionen und Informationen der Anwender aufrufen darf. Die Berechtigung kann dabei direkt mit der Identität des Anwenders zusammenhängen (bspw. Zugriff auf eigenes/persönliches Bankkonto) oder mit einem anderen Merkmal verknüpft sein, wie bspw. einer Rollen- oder Gruppenzuordnung (Datenbank-Administratoren, die auf alle Bankkonten zugreifen können). Das Festlegen und Erteilen von Zugriffsberechtigungen ist somit zwar abhängig von der Authentifikation ist aber je nach Applikation sehr spezifisch und muss daher separat davon betrachtet werden.

tl;dr

Die Authentifikation ist die Feststellung der Identität. Die Autorisierung ist die Festlegung, welche Zugriffe für die authentifizierte Identität möglich sind. Die beiden Begriffe hängen zwar zusammen, sollten aber bei der Entwicklung von Systemen und Anwendungen einzeln betrachtet werden. Auf jeden Fall muss darauf geachtet werden, dass diese Begriffe keine Synonyme sind.

Quellen

  1. Eckert, Claudia (2014): IT-Sicherheit, 9. Auflage, S. 8 
  2. Eckert, Claudia (2014): IT-Sicherheit, 9. Auflage, S. 5

Neuanfang

Neuer Blog, neues Glück? Nach langer Zeit, die dieser Blog nun schon rum gammelt, wird jetzt endlich angefangen! Aber worum soll es hier eigentlich gehen?

Nachdem ich bereits einen englischsprachigen Blog zu meinem Studium und generell Informatik-Themen hatte, möchte ich mich nun auf das Thema IT-Security fokussieren. Da es in diesem Bereich im deutschsprachigen Raum wenig „Player“ gibt, dachte ich mir, nicht den 100. Blog auf Englisch zu dem Thema zu starten, sondern über die Themen IT-Security, Penetration Testing und sicherer Applikationsentwicklung auf Deutsch zu schreiben.

Dieser Beitrag ist quasi die Stunde Null für diesen Blog. Es ist vieles noch nicht fertig, aber ich will jetzt endlich anfangen. Gleichzeitig ist dieser Blog auch ein Experiment. Mit meinem englischen Blog hatte ich generell sehr wenig Interaktion und Feedback, ein paar Studenten ausgenommen. Jetzt bin ich gespannt, ob es Interesse am Thema IT-Sicherheit in deutscher Sprache gibt und welche Diskussionen daraus entstehen. Über Rückmeldungen und Kommentare freue ich mich jedenfalls sehr und hoffe, dass ihr (die Leser meiner Beiträge) euch auch zu Wort meldet. Mein Ziel ist es, jede Woche mindestens einen Beitrag zu schreiben und ich denke, dass ich so nach ca. 25 Beiträgen mal ein Zwischenfazit ziehen werde.

Wo wir gerade bei Interaktion waren: Wenn du, als mein Leser, einen Wunsch für ein Thema hast, auf dass ich eingehen soll, dann schreib mir einfach hier, per Mail oder auf Twitter. Ich werde dann versuchen, wenn es thematisch passt, dazu etwas zu schreiben. Als kleinen Ausblick möchte ich heute schon das Thema des nächsten Beitrags ankündigen, sozusagen „teasern“.  😉 Mein erster Beitrag wird das Thema Authentifizierung (Authentication) und Autorisierung (Authorisation) behandeln, da es hier immer wieder zu Verwechslungen kommt und viele den Unterschied nicht genau kennen. Dies ist jedoch für viele Themen, gerade in der IT-Security wichtig zu verstehen, dass es sich um zwei grundsätzlich verschiedene Aspekte handelt, die nicht immer ohne weiteres vermischt oder gar synonym verwendet werden können.

Was gibt es sonst noch? Rechts oben findet ihr einen Link „Rabbit Hole“ und wie bei Alice im Wunderland soll euch das ggf. tiefer in den Kaninchenbau führen, so zumindest der Plan. Ich werde da eine Liste mit anderen interessanten Seiten pflegen. Dies soll keine Werbemaßnahme sein, sondern ist auch für mich einfach eine relativ lose Sammlung an Seiten im Netz, die sich aus IT-Security- oder Entwicklersicht lohnen.