.:: TechBlog ::. 
- 6.06.2007Oracle Call Interface kann nicht initialisiert werden (SP2-1503)
- Man nehme ein Windows Server System, installiere den Oracle Client (v10), verbinde sich per RDP ohne Adminrechte und starte den Oracle Client. Was passiert beim Verbindungsaufbau zur Datenbank? Die Java-Konsole verabschiedet sich ins Nirvana! Versucht man einen Verbindungsaufbau mit sql*plus so erhält man zumindest folgende Fehlermeldung:
SP2-1503: Oracle Call Interface kann nicht initialisiert werden
SP2-0152: ORACLE funktioniert eventuell nicht ordnungsgemäß bzw. auf englischen Systemen:
SP2-1503: Unable to initialize Oracle call interface
SP2-0152: ORACLE may not be functioning properly
Was ist passiert?
Das Problem besteht in folgender Konstellation:
- Der Nutzer hat keine Administratorrechte
- Er verbindet sich per RDP in eine Terminalsession (lokal geht)
Hintergrund:
Es handelt sich hierbei um eine Windows Sicherheitskonfiguration und wird durch die Sicherheitsrichtlinie "Erstellen globaler Objekte" (engl. "Create Global Objects"). Dem angemeldete Nutzer fehlt genau dieses Recht (Administratoren haben es hingegen).
Wofür ist dieses Recht?
"Das Benutzerrecht "Erstellen globaler Objekte" (SeCreateGlobalPrivilege) ist eine Sicherheitseinstellung von Windows 2000, die erstmals in Windows 2000 SP4 eingebracht wurde. Dieses Benutzerrecht wird zur Erstellung globaler Objekte in einer Terminaldienste-Sitzung benötigt. Sitzungsspezifische Objekte können auch ohne dieses Benutzerrecht angelegt werden. Standardmäßig wird das Benutzerrecht "Erstellen globaler Objekte" allen Mitgliedern der Administratoren-Gruppe, dem Systemkonto und allen Diensten, die durch den Dienststeuerungs-Manager gestartet werden, zugewiesen." siehe http://support.microsoft.com/kb/821546/de
Und nun?
Fügen wir unseren Terminalnutzer bzw. die Gruppe dem Recht zu (laut http://support.microsoft.com/kb/821546/de):- Klicken Sie auf Start, zeigen Sie auf Programme und auf Verwaltung, und klicken Sie dann auf Lokale Sicherheitsrichtlinie.
- Erweitern Sie Lokale Richtlinien, und klicken Sie anschließend auf Zuweisen von Benutzerrechten.
- Doppelklicken Sie im rechten Fensterbereich auf Erstellen globaler Objekte.
- Klicken Sie unter Lokale Sicherheitsrichtlinie auf Hinzufügen.
- Klicken Sie im Dialogfeld Benutzer oder Gruppen auswählen auf das entsprechende Benutzerkonto, klicken Sie auf Hinzufügen und anschließend auf OK
- Klicken Sie auf OK.
Kommentare:
- Kommentiert von ronda (heuschneider AT t-online.de) am: 24.10.2012 um 10:38:53
- habs gemacht ging nicht,
cmd als Administrator ausgeführt --> ging (Win7)
Aber die beschriebene Ursache ist plausibel und wer weis was der Sicherheit sonst noch alles geschuldet werden muss.
Danke für den Hinweis.
- Kommentiert von Rolf Jansen (rolf.jansen AT polizei.nrw.de) am: 1.10.2009 um 12:22:18
- Danke, im ganzen großen web gabs nur diesen einen sachdienlichen Hinweis :-)
Genau das war das Problem.