Java Authentication and Authorization Service


Java Authentication and Authorization Service

Java Authentication and Authorization Service (JAAS) ist ein Java-API, welches es ermöglicht, Dienste zur Authentifizierung und Zugriffsrechte in Java-Programmen bereitzustellen. JAAS orientiert sich an den Pluggable Authentication Modules (PAM) und unterstützt dadurch eine benutzerbasierte Autorisierung. JAAS wurde ab der Version 1.3.1 der Java Platform, Standard Edition als Erweiterung ausgeliefert und ist seit der Version 1.4 Teil der Java Platform (sowohl Standard Edition als auch EnterpriseEdition). Die zugehörigen Schnittstellen und Klassen sind im Paket „javax.security.auth“ definiert.

Funktionsweise

JAAS definiert Standardklassen und ein über mehrere Schnittstellen vorgegebenes Rahmenwerk, damit ein Java-Programm Anwender über eine verfahrens- und herstellerneutrale Schnittstelle authentisieren kann. Die eigentliche Authentisierungslogik ist in Provider-Module ausgelagert.

Die eigentliche Definition, wie ein JAAS-nutzendes Programm Anwender authentisieren und über welche Authentisierungsdatenquellen dies geschehen soll, wird in einer Java-Properties-Konfigurationsdatei festgelegt. So kann auch nach Fertigstellung eines Programms das verwendete Authentisierungsverfahren geändert werden, ohne den Programmcode modifizieren zu müssen.

Einsatz

Auf Grund der leicht veränderbaren Konfigurationsdatei und des prinzipiellen Aufbaus eines Java-Programms kann jeder Anwender mit Direktzugriff auf die Class- und Property-Dateien eines JAAS-Programms die verwendeten Provider-Module sehr leicht austauschen und so von einem Programm vorgesehene Sicherheitsbeschränkungen unterlaufen. Deswegen hat sich JAAS bei 2-Schicht-Anwendungen, bei denen die Anwendungslogik auf Endgeräten vom Anwender läuft, bisher kaum durchgesetzt.

Mit Java 1.4 werden folgende Provider Module mitgeliefert: Unix, NT LAN-Manager, Kerberos. Ab Java 6.0 ist zusätzlich ein LDAP-Authentication-Provider enthalten.

Sicher einsetzen lässt sich JAAS bei 3-Schicht-Anwendungen, bei denen die Anwendungslogik auf einen Applikation-Server außerhalb der Reichweite von Anwendern ausgelagert ist. Dort ist JAAS inzwischen auch ein De-facto-Marktstandard für Authentisierung. Dieser Standard wird weiter gefestigt, da alle namhaften Hersteller von Java Application Servern inzwischen grundsätzlich mehrere fertig einsetzbare JAAS-Provider-Module mit ihrem Application Servern mitliefern, mit denen gängige Authentisierungsprotokolle abgedeckt sind (z. B. LDAP, SAML, PKI Zertifikate, SQL Datenbanken).

Für eine Anbindung an im Unix-Umfeld übliche PAM-Authentisierungsmodule wird ein Bridge Modul benötigt, für das u.a. freie Implementierungen verfügbar sind.

Weblinks


Wikimedia Foundation.

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Java Authentication and Authorization Service — Java Authentication and Authorization Service, or JAAS, pronounced Jazz , is a Java security framework for user centric security to augment the Java code based security. Since Java Runtime Environment 1.4 JAAS has been integrated with the JRE… …   Wikipedia

  • Java Authentication and Authorization Service — Сервис Аутентификации и Авторизации Java (англ. Java Authentication and Authorization Service, сокр. JAAS)  реализация в языке программирования Java стандарта системы информационной безопасности PAM.[1] JAAS была представлена как… …   Википедия

  • Java Authentication and Authorization Service — JAAS (Java Authentication and Authorization Service) est un framework de sécurité de Java. Depuis la version 1.4 de JRE (Environnement d exécution Java), il est intégré à JRE. Il permet l authentification des utilisateurs ou des bibliothèques… …   Wikipédia en Français

  • Java 2 Enterprise Edition — Java Platform, Enterprise Edition, abgekürzt Java EE oder früher J2EE, ist die Spezifikation einer Softwarearchitektur für die transaktionsbasierte Ausführung von in Java programmierten Anwendungen und insbesondere Web Anwendungen. Sie ist eine… …   Deutsch Wikipedia

  • Java 2 Platform Enterprise Edition — Java Platform, Enterprise Edition, abgekürzt Java EE oder früher J2EE, ist die Spezifikation einer Softwarearchitektur für die transaktionsbasierte Ausführung von in Java programmierten Anwendungen und insbesondere Web Anwendungen. Sie ist eine… …   Deutsch Wikipedia

  • Java EE — Java Platform, Enterprise Edition, abgekürzt Java EE oder früher J2EE, ist die Spezifikation einer Softwarearchitektur für die transaktionsbasierte Ausführung von in Java programmierten Anwendungen und insbesondere Web Anwendungen. Sie ist eine… …   Deutsch Wikipedia

  • Java Platform Enterprise Edition — Java Platform, Enterprise Edition, abgekürzt Java EE oder früher J2EE, ist die Spezifikation einer Softwarearchitektur für die transaktionsbasierte Ausführung von in Java programmierten Anwendungen und insbesondere Web Anwendungen. Sie ist eine… …   Deutsch Wikipedia

  • Authentication — (from Greek αυθεντικός; real or genuine, from authentes; author) is the act of establishing or confirming something (or someone) as authentic , that is, that claims made by or about the thing are true. This might involve confirming the identity… …   Wikipedia

  • Java Platform, Enterprise Edition — Java Platform, Enterprise Edition, abgekürzt Java EE oder früher J2EE, ist die Spezifikation einer Softwarearchitektur für die transaktionsbasierte Ausführung von in Java programmierten Anwendungen und insbesondere Web Anwendungen. Sie ist eine… …   Deutsch Wikipedia

  • Java Platform, Enterprise Edition — Тип Платформа программирования Разработчик Sun Microsystems …   Википедия