|
|
|||||||
| Home / Produkte / Parks Security Management / Einführung von PSM im Unternehmen / Integration per Programmierschnittstelle | ||||||||
Integration eigener Anwendungen
|
Integration per ProgrammierschnittstelleÜber eine Programmierschnittstelle, die in Form einer dynamischen Bibliothek (DLL) für Windows ausgeliefert wird, können die PSM-Funktionen zur Berechtigungsprüfung leicht in eigene Anwendungen integriert werden. Diese Schnittstelle kann in allen Programmiersprachen verwendet werden, die Aufrufe von dynamischen Bibliotheken gestatten. Beispiele für diese Sprachen sind: C, C++, Visual Basic, Java, oder Delphi. Auch Entwicklungssysteme wie MS Access, Oracle Developer oder PowerBuilder können die Schnittstelle nutzen.
Soll PSM in eigenen Anwendungen verwendet werden, so muss an geeigneten Stellen eine einzige PSM-Schnittstellenfunktion zur Prüfung der Benutzerberechtigungen aufgerufen werden. Weiterer Programmieraufwand entsteht nicht. Je nach Komplexität der Anwendung können verschiedene Verfahren verwendet werden. Einfache Programme benötigen vielleicht nur beim Start eine Prüfung der Berechtigung zur Nutzung des Programms, bevor die eigentlichen Programmfunktionen beginnen. Es besteht aber die Möglichkeit, an jeder beliebigen Stelle im Programm diese Prüfung einzubauen, einfach durch weitere Aufrufe der Schnittstellenfunktion. So können z.B. Menüs oder Schaltflächen in Dialogen aktiviert oder deaktiviert werden, um eine Nutzung je nach Berechtigung zu erlauben oder zu verhindern. Die Entscheidung, wie umfangreich die Berechtigungsprüfungen implementiert werden, fällt ein PSM-Kunde selbst, je Anwendung nach individuellen Anforderungen.
Eine Integration von PSM in die Anwendungen bringt viele Vorteile:
Beispiel: PsmHelloWorld Zur Verdeutlichung ein Beispielprogramm in der Programmiersprache C, das berühmte Hello world, als sichere PSM-Version. Im Programmquelltext werden alle Funktionen der PSM-Programmierschnittstelle, die einheitlich mit Sec beginnen, durch Fettdruck hervorgehoben. Die Schritte 1 und 3 betreffen Initialisierung und Beendigung des Programms und müssen nur einmal je Anwendung implementiert werden. In Schritt 2 findet die Berechtigungsprüfung statt. Ist dem angemeldeten Benutzer die Berechtigung UseHelloWorld über eine Rolle zugeordnet, so wird die Grußnachricht ausgegeben, ansonsten erhält er eine Fehlermeldung.
int main(void)
{
sysh_t hContext ; /* Programmsicherheitskontext */
sysh_t hAccessToken; /* Benutzeridentität */
rc_t rc; /* Fehlercode */
/* Schritt 1: Programmstart */
/* Initialisierung */
rc = SecSysStart("/HelloWorld", "HelloWorld", 0, 0, &hContext);
if(rc)
{
/* Fehler */
return 1;
}
/* prüfe Identität des Programmnutzers; nur falls der Anwender
sich noch nicht am Arbeitsplatz angemeldet hat, erscheint
jetzt das PSM-Anmeldeprogramm */
rc = SecSysAuthenticate(hContext);
if(rc)
{
/* Fehler, oder Benutzer brach Anmeldung ab */
SecSysEnd(hContext);
return 1;
}
/* hole Benutzeridentität */
rc = SecSysGetProcessAccessToken(&hAccessToken);
if(rc)
{
/* Fehler */
SecSysEnd(hContext);
return 1;
}
/* Schritt 2: Berechtigungsprüfung */
/* prüfe, ob der Benutzer dieses Programm nutzen darf;
UseHelloWorld ist der Name der Berechtigung in der Datenbank,
die über eine Rolle Anwendern zugeordnet werden kann */
rc = SecAcCheckPermission(hAccessToken, "UseHelloWorld");
if(rc)
{
/* Fehler */
printf("Keine Berechtigung.\n");
}
else
{
/* Nutzung des Programms erlaubt, also Gruß ausgeben*/
printf("Hello, world!\n");
}
/* Schritt 3: Programmende */
/* gebe Benutzeridentität frei (das bedeutet keine Abmeldung des
Benutzers) */
SecSysFreeAccessToken(hAccessToken);
/* Ende */
SecSysEnd(hContext);
return 0;
}
Dieses Beispielprogramm verdeutlicht, wie einfach PSM in eigene Anwendungen integriert werden kann. So kann mit geringem Aufwand ein hohes Maß an Sicherheit für eigene Anwendungen erreicht werden. |
Auf einen BlickDemo anfordernNoch Fragen? Fordern Sie eine
unverbindliche Präsentation an!
Telefon:
Windows-BerechtigungenVerwalten und analysieren Sie Berechtigungen mit unserer neuen Lösung Parks Authorization Manager (PAM) PartnerprogrammSie vertreiben IT-Produkte und Dienstleistungen und möchten Ihr Portfolio erweitern? Werden Sie unser Partner! |
||||||
|
|
||||||||
|
Copyright © 2001−2010 Parks Informatik GmbH |
Parks Informatik GmbH − Girardetstr. 2-38 − D-45131 Essen Tel. 0201 / 5 45 28 - 0 − parks@parks-informatik.de − Impressum |
|
||||||