ADS: Rechte bei Direktnutzung ohne DD

Advantage Database Server

Moderator: Moderatoren

Antworten
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9387
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 103 Mal
Danksagung erhalten: 362 Mal
Kontaktdaten:

ADS: Rechte bei Direktnutzung ohne DD

Beitrag von Tom »

Huhu.

Wir nutzen den ADS über die ADSDBE, ohne Data Dictionary, das läuft so bei hunderten Kunden. Wir haben unsere ADS-Konsole, die Bestandteil der Anwendung ist, kürzlich ein bisschen erweitert, weil wir in der Übersicht der angemeldeten Benutzer auch die originären OS-Login-Namen (also die Windows-Benutzernamen) sehen wollen, und außerdem wollten wir Admins unserer Software einen Blick in die Errorlogs gestatten.

Zwei Probleme. Beim Versuch, sp_mgGetErrorLog() abzurufen, bekomme ich bei jedem Kunden einen ADS Fehler 7200 mit diesem Fehlerbeschreibung:
adserror.png
adserror.png (15.74 KiB) 359 mal betrachtet
Und der OSUserLoginName ist fast immer leer. Ich fürchte, das hängt auch irgendwie mit Rechten zusammen. Aber ich sehe überhaupt keine Möglichkeit, irgendwelche Rechte im ADS zu vergeben. Unser Connect zum ADS erfolgt ohne Benutzerdaten, und ich wüsste auch nicht, mit welchen man das tun sollte. Oder sollte man? Mit welchen?
Herzlich,
Tom
Benutzeravatar
nightcrawler
1000 working lines a day
1000 working lines a day
Beiträge: 653
Registriert: Di, 24. Apr 2012 16:33
Wohnort: 72184 Weitingen
Hat sich bedankt: 3 Mal
Danksagung erhalten: 96 Mal
Kontaktdaten:

Re: ADS: Rechte bei Direktnutzung ohne DD

Beitrag von nightcrawler »

Hallo Tom,
diese SP ist durch das Konzept des root dictionaries in V11 hinzugekommen. In der Hilfe steht dazu:
sp_mgGetErrorLog is an administrative procedure that will return the newest error entries from the error logs. This procedure may only be run on the active root dictionary and the user must be a member of the SERVER:Monitor group.
--
Joachim
Joachim Dürr Softwareengineering
https://www.jd-engineering.de
Benutzeravatar
Marcus Herz
1000 working lines a day
1000 working lines a day
Beiträge: 860
Registriert: Mo, 16. Jan 2006 8:13
Wohnort: Allgäu
Hat sich bedankt: 39 Mal
Danksagung erhalten: 196 Mal
Kontaktdaten:

Re: ADS: Rechte bei Direktnutzung ohne DD

Beitrag von Marcus Herz »

Soweit ich das weiß, geht das nur mit einem ADD. Nur dann kannst du ja User Redhte pflegen. Und die werden benötigt
Gruß Marcus

Den Kopf in den Sand zu stecken verbessert die Welt auch nicht.
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9387
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 103 Mal
Danksagung erhalten: 362 Mal
Kontaktdaten:

Re: ADS: Rechte bei Direktnutzung ohne DD

Beitrag von Tom »

Das ist aber doof. Ich sehe gerade auch, dass KillUser deshalb nicht mehr funktioniert; ich hatte mich schon gewundert. Auch das braucht mindestens das Root-DD. Das heißt also, ich muss den ARC (Wo zur Hölle steckt der überhaupt?) verwenden, um ein Root-DD zu etablieren? Geht das auch ohne Nutzung eines DD für die eigentliche Datenbank?
Herzlich,
Tom
Benutzeravatar
nightcrawler
1000 working lines a day
1000 working lines a day
Beiträge: 653
Registriert: Di, 24. Apr 2012 16:33
Wohnort: 72184 Weitingen
Hat sich bedankt: 3 Mal
Danksagung erhalten: 96 Mal
Kontaktdaten:

Re: ADS: Rechte bei Direktnutzung ohne DD

Beitrag von nightcrawler »

Hallo Tom,
root-ADD ist unabhängig von eigener ADD. Dies dient nur zum Definieren von "Admins".
KillUser müsste aber auch ohne gehen!?

ads_err.adt ohne Root-Dictionary:

Code: Alles auswählen

declare @err string;
@err=(select value from (execute procedure sp_mggetconfiginfo()) mg where item like 'Error Log Path');
@err=trim(@err)+'ads_err.adt';
try drop table #tmp_err; catch all end try;
execute immediate 'select * into #tmp_err from ['+trim(@err)+']';
SELECT * FROM #tmp_err;
--
Joachim
Joachim Dürr Softwareengineering
https://www.jd-engineering.de
Antworten