19.01.2024 Aufrufe

IT Security Januar / Februar 2024

Effiziente Cybersicherheit – Ökosysteme aus Menschen, Expertise, Services und Technologie Im Visier der Cyberkriminellen – Effektive Abwehr durch sichere Authentifizierung Von wegen Drahtseilakt! So gelingt Unternehmen der sichere Einsatz von KI-Lösungen Fein-granulare Autorisierung – Warum der Hype?

Effiziente Cybersicherheit – Ökosysteme aus Menschen, Expertise, Services und Technologie
Im Visier der Cyberkriminellen – Effektive Abwehr durch sichere Authentifizierung
Von wegen Drahtseilakt! So gelingt Unternehmen der sichere Einsatz von KI-Lösungen
Fein-granulare Autorisierung – Warum der Hype?

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>IT</strong> SECUR<strong>IT</strong>Y | 41<br />

PAP<br />

1. View record #123<br />

2. Can Alice view<br />

record #123?<br />

3. Evaluate policies<br />

Manage policies<br />

Bild 2:<br />

Policy Enforcement<br />

Komponenten<br />

(CREATIVE COMMONS<br />

Lizenz, Wikipedia)<br />

PEP<br />

PDP<br />

Lösungen wie OAuth und SAML – inklusive<br />

kommerzieller und kostengünstiger<br />

Open-Source-Lösungen am Markt.<br />

Für die zentrale Autorisierung stehen<br />

neue Technologien zur Verfügung, die<br />

nachfolgend behandelt werden. Vom<br />

bekannten Role Based Access Control<br />

(RBAC) haben sich im Laufe der Zeit Varianten<br />

wie Attribute-based (ABAC) und<br />

Context-based Access Control (CBAC)<br />

entwickelt, wie sie im „Conditional Access“<br />

in Microsofts Azure Cloud zum<br />

Einsatz kommen. Hierbei sind nicht nur<br />

die Rollen, sondern auch Eigenschaften<br />

und der aktive Kontext relevant (mehr<br />

dazu später).<br />

Um diesen Kontext und die Eigenschaften<br />

dynamisch in Zugriffsentscheidungen<br />

einzubeziehen, benötigen wir eine<br />

angepasste Applikations-Architektur<br />

und Infrastruktur. Diese lassen sich am<br />

besten herleiten, wenn die Komponenten<br />

nach einer bekannten Nomenklatur<br />

benannt und deren Eigenschaften beschrieben<br />

werden. Hierfür haben sich<br />

die folgenden Begriffe etabliert:<br />

6. View record #123<br />

5. Permit, Alice can<br />

view record #123<br />

PIP<br />

4. Retrieve additional<br />

attributes<br />

PDP – Policy Decision Point: Fällt anhand<br />

von Regeln und Kontext-Informationen<br />

Zugriffsentscheidungen für den<br />

Enforcement Point<br />

PAP – Policy Administration Point: Zentrale<br />

Management-Komponente zur<br />

Verwaltung von Policies und Monitoring<br />

von Entscheidungen des PDPs<br />

PIP – Policy Information Point: Stellt bei<br />

Bedarf einem PDP zusätzliche (Meta-)<br />

Daten über Benutzer und Ressourcen<br />

zur Verfügung<br />

In klassischen monolithischen Anwendungen<br />

sind Benutzerkonten, Passwörter<br />

und Berechtigungen lokal in der Anwendung<br />

verankert, was zu Redundanzen<br />

und ineffizienter Berechtigungsverwaltung<br />

führt. Ein moderner Ansatz<br />

beginnt mit der Auslagerung der Benutzerverwaltung<br />

und der Einführung von<br />

Single Sign-On (SSO). Hierdurch wird<br />

der gesamte Login-Prozess an einen externen<br />

Identity-Provider ausgelagert.<br />

Der Anpassungsaufwand hierfür ist<br />

meist überschaubar und lässt sich durch<br />

externe Module im Webserver oder vorgelagerten<br />

Reverse-Proxy verhältnismäßig<br />

einfach umsetzen.<br />

In der zweiten Stufe kann die Berechtigungssteuerung<br />

derart angepasst werden,<br />

dass Zugriffsentscheidungen anhand<br />

benutzerbezogener Eigenschaften<br />

getroffen werden. Durch SSO liefert<br />

der Identity-Provider diese Benutzer-Attribute<br />

einheitlich beim Login gleich<br />

mit, wodurch die Zugriffssteuerung optimiert<br />

werden kann. Die wesentlichen<br />

Vorteile sind eine zentralisierte und einheitliche<br />

Verwaltung relevanter Benutzereigenschaften<br />

sowie eine effiziente<br />

Bereitstellung per SSO.<br />

Eine feingranulare Zugriffssteuerung ist<br />

trotz SAML und OpenID Connect<br />

(OIDC) damit nur eingeschränkt möglich,<br />

denn die Fähigkeiten beider Protokolle<br />

sind begrenzt:<br />

SSO kann nur begrenzte Benutzerdaten<br />

just-in-time übermitteln, da der Platz<br />

für SAML/OIDC-Tokens durch das<br />

HTTP-Protokoll limitiert ist und in der Praxis<br />

wenige kB nicht überschreiten sollte.<br />

In realen Umgebungen ist es hingegen<br />

üblich, dass ein Benutzer zum Beispiel<br />

in vielen Gruppen Mitglied ist.<br />

SSO behandelt nur Identitätsdaten; die<br />

Entscheidung über Benutzeraktionen<br />

und -berechtigungen liegt weiterhin in<br />

der Anwendung. Mit SSO wird nur die<br />

Authentisierung ausgelagert, nicht jedoch<br />

die Autorisierung, die oft durch<br />

Programmlogik innerhalb der Anwendung<br />

erfolgt (wie exemplarisch in Listing<br />

1 dargestellt).<br />

PEP – Policy Enforcement Point: Die<br />

Komponente, welche eine Zugriffsentscheidung<br />

schlussendlich umsetzt. In<br />

der Regel ist dies eine Anwendung.<br />

LISTING 1<br />

def perform_create(self, request, instance):<br />

group = request.user.group<br />

if group == ‟member” or group == ‟admin”:<br />

instance.save()<br />

else:<br />

return HttpResponse(‟Unauthorized”, status=401)<br />

www.it-daily.net | <strong>Januar</strong>/<strong>Februar</strong> <strong>2024</strong>

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!