Date post: | 05-Apr-2015 |
Category: |
Documents |
Upload: | schwanhild-angst |
View: | 102 times |
Download: | 0 times |
Zugriffschutz in ASAM ODS
ATHOS Benutzertreffen 2005Glashütten16. Juni 2005
Andreas Hofmann
[email protected] / www.highqsoft.com
Zugriffschutz in ASAM ODS
Themen- Authentisierung- Zugriffschutzebene- Rechte- Neue Instanzen anlegen- Anforderungen an Modell Erstellung
Zugriffschutz in ASAM ODS
AuthentisierungUSERNAME/PASSWORD Prüfung in OO_API:
AoSession aoSession = aofObj.newSession(„USERNAME=ich,
PASSWORD=geheim“);
Server gibt unter folgenden Bedingungen ein Session Objekt zurück:
• Ist eine Instanz von AoUser mit Name „ich“ vorhanden ?• Ist die MD5-Kodierung des Passworts „geheim“ identisch mit
dem Passwort der AoUser Instanz?
Zugriffschutz in ASAM ODS
Authentisierung
Ein Passwort wird via der API Methode des Session Objektes gesetzt:
aoSession.setPassword(„ich“, „vergessen“, „geheim“);// username = „ich“// oldPassword = „vergessen“// newPassword = „geheim“
Superuser braucht ‚oldPassword‘ nicht zu setzen.
Zugriffschutz in ASAM ODS
Unter Verwendung des AsamCommander SecurityAdmin-Plugin kann man das Passwort ändern.
Zugriffschutz in ASAM ODS
Zugriffschutz in ASAM ODS
AuthentisierungASAM ODS spezifiziert keine Vorgehensweise für ein
Single-Login.
HighQSoft Lösung:
Plugin für newSession von AoFactory Interface. Dieses nimmt Verbindung zum kundenspezifischen Authentisierungssystem (z.B. LDAP) und erfragt ASAM ODS Login anhand des Client Zertifikats.
Zugriffschutz in ASAM ODS
Authentisierung
Client
LDAP-Server
User-Database
Avalon
Plugin
ASAM-ODSDatabase
Zugriffschutz in ASAM ODS
Authentisierung: Client Anmeldung
Client
LDAP-Server
User-Database
Avalon
Plugin
ASAM-ODSDatabase
login
Zertifikat
„Zertifikat=xyz...“
Zugriffschutz in ASAM ODS
Authentisierung: Client login an Avalon
Client
LDAP-Server
User-Database
Avalon
Plugin
ASAM-ODSDatabase
ZertifikatnewSession(„Zertifikat=xyz...“)
Zugriffschutz in ASAM ODS
Authentisierung: Avalon ruft Plugin
Client
LDAP-Server
User-Database
Avalon
Plugin
ASAM-ODSDatabase
Zertifikat
„Zertifikat=xyz...“
„Zertifikat=xyz...“
„USERNAME=ich,PASSWORD=geheim“
*1
*1 newSession(USERNAME=ich,
PASSWORD=geheim“
Zugriffschutz in ASAM ODS
Authentisierung: Avalon prüft Authentisierung
Client
LDAP-Server
User-Database
Avalon
Plugin
ASAM-ODSDatabase
Zertifikat AoUser.name=„ich“ password=MD5(„geheim“)
OK
AoSession aoSession
Zugriffschutz in ASAM ODS
Zugriffschutzebene
In ASAM ODS sind vier verschiedene Zugriffsschutz - Ebenen spezifiziert.
1. Keine Zugriffsschutz
2. Element Zugriffsschutz
3. Attribut Zugriffsschutz
4. Instanz Zugriffsschutz
Es sind Kombinationen von Element, Attribute und Instanz Schutz möglich.
Zugriffschutz in ASAM ODS
Zugriffschutzebene: Keine
Element mit Instanzen Attribute
Instanzen
Zugriffschutz in ASAM ODS
Zugriffschutzebene: Element
Element mit Instanzen
Instanzen
Attribute
Zugriffschutz in ASAM ODS
Zugriffschutzebene: Attribute
Element mit Instanzen Attribute
Instanzen
Zugriffschutz in ASAM ODS
Zugriffschutzebene: Instanz
Element mit Instanzen Attribute
Instanzen
Zugriffschutz in ASAM ODS
Zugriffschutzebene lässt sich im AsamCommander für jedes Applikationselement festlegen.
Zugriffschutz in ASAM ODS
Rechte
ASAM ODS spezifiziert verschiedene Rechte:1. READ, Recht zu Lesen 2. INSERT, Recht neue Instanzen einzufügen3. UPDATE, Recht zu Ändern4. DELETE, Recht zu Löschen5. GRANT, Recht zur Vergabe von Rechten
Die Kombination von Rechten ist möglich
Zugriffschutz in ASAM ODS
Rechte
• Sobald Zugriffschutz definiert ist, gibt es kein Zugriff ohne Rechte.
• Rechte werden an AoUserGroup Instanzen vergeben.• Instanzen ohne Zugriffschutz erben den Zugriffschutz
des Vaters. • Nur Superuser hat Zugriff auf alle Instanzen, auch auf
die ohne Rechte.
Zugriffschutz in ASAM ODS
Neue Instanzen anlegen
• Neu angelegte Instanzen haben keine Rechte.
Kein Zugriff auf neu angelegte Instanzen.
• ASAM ODS Lösung:
INITIAL Rechte
Zugriffschutz in ASAM ODS
INITIAL Rechte neuer Instanzen werden alternativ über die folgenden Mechanismen bezogen:
– Von Client gesetzte Initialrechte
OO_API: aoSession.setCurrentInitialRights(irList, 1);– Initial Rechte von einer Instanzbeziehung über
InitialRightRelation– Initial Rechte vom Applicationselement– Rechte von Vater-Instanz.– Keine Rechte
Zugriffschutz in ASAM ODS
InitialRightRelationTeil eines Beispiel-Applikationsmodell
Zugriffschutz in ASAM ODS
InitialRightRelationBeispiel:
Rechte von neuen Instanzen von Measurement werden von referenzierter Instanz von TestBed bestimmt.
Notwendig:
Beim Applikationselement Measurement muss dieses Referenzattribute als InitialRightRelation ausgewiesen sein.
Zugriffschutz in ASAM ODS
InitialRightRelation
Zugriffschutz in ASAM ODS
Initialrechte der Testbed „A9“
Zugriffschutz in ASAM ODS
Zugriffsrechte der Messung Instanz „AB12“
Zugriffschutz in ASAM ODS
Anforderungen an Modell Erstellung- AoUser und AoUserGroup müssen im Modell
vorhanden sein.- Es muss mindestens eine Instanz von AoUser und
AoUserGroup anlegt werden.- Eine Instanz von AoUserGroup muss als Superuser
ausgewiesen werden.- Es muss mindestens eine Benutzer in der Gruppe der
Superuser enthalten sein.
Zugriffschutz in ASAM ODS
Anforderungen an Modell Erstellung- Festlegung der Zugriffschutzebene für jedes
Applikationselement.- Für Applikationselemente mit dem Zugriffschutz
INSTANCE, muss festlegt werden, wie die Initial Rechte vergeben werden.
- Für die Initial Rechte müssen u.U. spezielle Applikationselemente und Relationen zum Modell hinzufügt werden.
- Benutzergruppe müssen dem Umfeld entsprechend definiert werden. Über die Aufgabenverteilung werden dann die Rechte dieser Gruppen definiert.
Vielen Dank für Ihre Aufmerksamkeit