In einer verteilten SAS© BI (Business Intelligence)-Architektur ist es üblich, dass sich der Compute Server auf einer anderen Maschine befindet als die, auf der die physischen Daten liegen.
Ein klassisches Szenario: Ihre SAS©-Plattform ist auf dem Server A installiert, aber Sie versuchen, eine Bibliothek (Library) zu deklarieren, die auf Dateien auf dem Server B verweist. Dann tritt die blockierende Fehlermeldung auf:
Diese Meldung ist besonders frustrierend, da der Benutzer oft feststellt, dass er über den Windows-Datei-Explorer (Befehl "Ausführen") problemlos auf den Remote-Ordner zugreifen kann. Wenn der Systemzugriff zu funktionieren scheint, warum verweigert SAS© dann die Verbindung?
Hier sind die Diagnoseansätze und Lösungen, um diesen Berechtigungskonflikt zu lösen.
Dies ist die häufigste und am einfachsten zu überprüfende Ursache.
Standardmäßig versucht SAS© beim Zuweisen einer Bibliothek (über eine LIBNAME-Anweisung oder über die Metadaten) oft, vollen Zugriff (Lesen und Schreiben) zu erhalten.
Wenn der Benutzer auf Betriebssystemebene (Windows/Linux) nur Lesezugriff auf den freigegebenen Ordner von Server B hat, gibt SAS© diesen generischen Berechtigungsfehler zurück, auch wenn Sie nur versuchen, Daten zu lesen.
Die Lösung: Überprüfen Sie, ob die Option "Read-Only" in den Eigenschaften der Bibliothek aktiviert ist, oder erzwingen Sie den schreibgeschützten Zugriff in Ihrem Code (ACCESS=READONLY).
Um herauszufinden, ob die Blockade von den SAS©-Metadaten oder den Systemberechtigungen (OS) kommt, gibt es einen unfehlbaren Test.
Führen Sie manuell eine LIBNAME-Anweisung in einem Programm aus (über SAS© Enterprise Guide oder Studio), die direkt auf den Netzwerkpfad verweist, ohne die vordefinierten Metadaten zu verwenden.
Wenn dieser Code funktioniert: Das bedeutet, dass die Systemberechtigungen (OS) korrekt sind. Das Problem liegt also in der Definition der Metadaten (SAS© Management Console). Sie müssen die Berechtigungen für das Bibliotheksobjekt im Metadatenbaum überprüfen (Leserechte für die Metadaten UND für die physischen Daten).
Wenn dieser Code fehlschlägt: Das Problem liegt auf der Ebene des Betriebssystems oder des Netzwerks. Das Benutzerkonto, unter dem der SAS©-Prozess auf Server A ausgeführt wird, hat nicht die entsprechenden Rechte auf Server B.
In einer BI-Architektur ist die Identität des Benutzers, der sich am Portal anmeldet, nicht immer die, die der Server für den Zugriff auf Dateien verwendet.
Es ist unerlässlich, die Konfiguration in der SAS© Management Console zu überprüfen:
Öffnen Sie den User Manager (Benutzer-Manager).
Suchen Sie das Profil des betroffenen Benutzers oder der Gruppe.
Überprüfen Sie den Reiter "Accounts" (Konten).
Stellen Sie sicher, dass die hier definierten Anmeldeinformationen (Login) einem gültigen Domänenkonto entsprechen, das die erforderlichen Berechtigungen auf dem Remote-Server besitzt. Wenn die Authentifizierung über ein generisches Dienstkonto (z.B. sassrv) erfolgt, muss dieses spezifische Konto die Rechte für den freigegebenen Ordner haben, nicht Ihr persönliches Konto.
Der Fehler "Appropriate authorization level" ist oft eine Maske für einen einfachen Rechtekonflikt "Lesen vs. Schreiben" oder eine Verwechslung zwischen der Identität des angemeldeten Benutzers und der Identität des SAS©-Serverprozesses. Indem Sie den Zugriff mit reinem Code testen, isolieren Sie schnell die für die Blockade verantwortliche Schicht.