Backend permission denied error

Antworten
AimoB
Beiträge: 4
Registriert: 19 Okt 2017, 15:24

Backend permission denied error

Beitrag von AimoB »

Hallo,

Ich erhalte beim öffnen der opsi config editor die folgenden Fehlermeldung.
Okt 19 15:43:47.477 2017 -- Opsi service error: [BackendPermissionDeniedError] Backend permission denied error: Access to method 'config_updateObjects' denied for user 'Berbig': Backend permission denied error: Access denied
Okt 19 15:43:47.495 2017 -- Opsi service error: [BackendPermissionDeniedError] Backend permission denied error: Access to method 'config_updateObjects' denied for user 'Berbig': Backend permission denied error: Access denied
Okt 19 15:43:47.641 2017 -- Opsi service error: [BackendPermissionDeniedError] Backend permission denied error: Access to method 'group_getObjects' denied for user 'Berbig'
Okt 19 15:43:47.747 2017 -- Opsi service error: [BackendPermissionDeniedError] Backend permission denied error: Access to method 'objectToGroup_getObjects' denied for user 'Berbig'
Okt 19 15:43:47.764 2017 -- Opsi service error: [BackendPermissionDeniedError] Backend permission denied error: Access to method 'config_updateObjects' denied for user 'Berbig': Backend permission denied error: Access denied

Ich bin mit meinen User Mitglied in der Gruppe opsiadmin. Bis vor 2 Tagen hatte ich auch darauf Zugriff. opsi läuft bei mir auf einen UCS-System. Gestern habe ich noch ein Update über App-Center durchgeführt. Das Problem bestand schon vorher.

Ich bin noch nicht vertraut mit der Software-OPSI.
Mir ist aufgefallen, dass es bei mir keine Gruppe pcupdate gibt. Der User ist vorhanden.

Das System ist schon seit einiger Zeit in Betrieb und ich habe das jetzt übernommen.
Kann mir jemand helfen?
Benutzeravatar
n.wenselowski
Ex-uib-Team
Beiträge: 3194
Registriert: 04 Apr 2013, 12:15

Re: Backend permission denied error

Beitrag von n.wenselowski »

Hi,
AimoB hat geschrieben:Ich erhalte beim öffnen der opsi config editor die folgenden Fehlermeldung.
Okt 19 15:43:47.477 2017 -- Opsi service error: [BackendPermissionDeniedError] Backend permission denied error: Access to method 'config_updateObjects' denied for user 'Berbig': Backend permission denied error: Access denied
Okt 19 15:43:47.495 2017 -- Opsi service error: [BackendPermissionDeniedError] Backend permission denied error: Access to method 'config_updateObjects' denied for user 'Berbig': Backend permission denied error: Access denied
Okt 19 15:43:47.641 2017 -- Opsi service error: [BackendPermissionDeniedError] Backend permission denied error: Access to method 'group_getObjects' denied for user 'Berbig'
Okt 19 15:43:47.747 2017 -- Opsi service error: [BackendPermissionDeniedError] Backend permission denied error: Access to method 'objectToGroup_getObjects' denied for user 'Berbig'
Okt 19 15:43:47.764 2017 -- Opsi service error: [BackendPermissionDeniedError] Backend permission denied error: Access to method 'config_updateObjects' denied for user 'Berbig': Backend permission denied error: Access denied

Ich bin mit meinen User Mitglied in der Gruppe opsiadmin. Bis vor 2 Tagen hatte ich auch darauf Zugriff. opsi läuft bei mir auf einen UCS-System. Gestern habe ich noch ein Update über App-Center durchgeführt. Das Problem bestand schon vorher.
Wurden weitere Updates außer opsi eingespielt?
Wurde der opsiconfd schon mal neu gestartet?

Ich würde auch mal prüfen ob es besondere Einstellungen in der /etc/opsi/backendManager/acl.conf gibt.
Bringt das nichts, dann muss temporär der Log-Level des opsiconfd auf 7 erhöht werden (in /etc/opsi/opsiconfd.conf), der Dienst neu gestartet, ein Anmeldeversuch durchgeführt und ein Blick ins Log /var/log/opsi/opsiconfd/<deineip.log> geworfen werden.
Damit sollte nachvollziehbar werden wo genau das Problem herkommt.
AimoB hat geschrieben:Ich bin noch nicht vertraut mit der Software-OPSI.
Mir ist aufgefallen, dass es bei mir keine Gruppe pcupdate gibt. Der User ist vorhanden.
Bei opsi gibt es im Default nur pcpatch. Ist der gemeint?
Unter UCS ist die Gruppe opsifileadmins.
AimoB hat geschrieben:Das System ist schon seit einiger Zeit in Betrieb und ich habe das jetzt übernommen.
Kann mir jemand helfen?
Generell empfehle ich dann mal das Getting Started bzw. das Handbuch zur Hand zu nehmen und darin zu lesen.
Wenn opsi produktiv im Einsatz ist, würde ich zusätzlich einen Supportvertrag empfehlen. Darüber könnten wir auch mit euch auf eure Umgebung schauen und direkt helfen - geht meist schneller als übers Forum ;)


Gruß

Niko

Code: Alles auswählen

import OPSI
AimoB
Beiträge: 4
Registriert: 19 Okt 2017, 15:24

Re: Backend permission denied error

Beitrag von AimoB »

Hi,
n.wenselowski hat geschrieben: Bei opsi gibt es im Default nur pcpatch. Ist der gemeint?
Unter UCS ist die Gruppe opsifileadmins.
Ja, die Gruppe war gemeint und da bin ich auch Mitglied. Hab ich dann auch im Handbuch gelesen. :roll:

Ich hatte bereits die Rechte neu gesetzt und den opsi-Dienst neu gestartet.
n.wenselowski hat geschrieben: Ich würde auch mal prüfen ob es besondere Einstellungen in der /etc/opsi/backendManager/acl.conf gibt.
Bringt das nichts, dann muss temporär der Log-Level des opsiconfd auf 7 erhöht werden (in /etc/opsi/opsiconfd.conf), der Dienst neu gestartet, ein Anmeldeversuch durchgeführt und ein Blick ins Log /var/log/opsi/opsiconfd/<deineip.log> geworfen werden.
Damit sollte nachvollziehbar werden wo genau das Problem herkommt..
Die /etc/opsi/backendManager/acl.conf ist ein link auf die /etc/opsi/backendManag/acl.conf.default
Loglevel habe ich temporär auf 7 erhöht und nachdem ich den Dienst neu gestartet habe, einen Anmeldeversuch unternommern.

Hier ist ein kleiner Auszug wo ich nicht weiterkomme:
7] [Oct 23 16:42:19] Access control for method 'config_updateObjects' with params {'configs': <UnicodeConfig(id=u'configed.productonclient_displayfields_localboot', description=u'', possibleValues=[u'actionRequest', u'installationInfo', u'installationStatus', u'position', u'priority', u'productId', u'productName', u'stateChange', u'targetConfiguration', u'versionInfo'], defaultValues=[u'actionRequest', u'installationInfo', u'installationStatus', u'productId', u'versionInfo'], editable=False, multiValue=True)>} (BackendManager.py|893)
[7] [Oct 23 16:42:19] Found matching acl for method 'config_updateObjects': [{'denyAttributes': [], 'type': u'sys_group', 'ids': [u'opsiadmin'], 'allowAttributes': []}, {'denyAttributes': [], 'type': u'opsi_depotserver', 'ids': [], 'allowAttributes': []}, {'denyAttributes': [], 'type': u'self', 'ids': [], 'allowAttributes': []}] (BackendManager.py|900)
[7] [Oct 23 16:42:19] Method 'config_updateObjects' using acls: [{'denyAttributes': [], 'type': u'self', 'ids': [], 'allowAttributes': []}] (BackendManager.py|935)
[7] [Oct 23 16:42:19] Partial access to method 'config_updateObjects' granted to user u'Berbig' by acls [{'denyAttributes': [], 'type': u'self', 'ids': [], 'allowAttributes': []}] (BackendManager.py|942)
[7] [Oct 23 16:42:19] Filtering params: {'configs': <UnicodeConfig(id=u'configed.productonclient_displayfields_localboot', description=u'', possibleValues=[u'actionRequest', u'installationInfo', u'installationStatus', u'position', u'priority', u'productId', u'productName', u'stateChange', u'targetConfiguration', u'versionInfo'], defaultValues=[u'actionRequest', u'installationInfo', u'installationStatus', u'productId', u'versionInfo'], editable=False, multiValue=True)>} (BackendManager.py|962)
[6] [Oct 23 16:42:19] Filtering objects by acls (BackendManager.py|993)
[4] [Oct 23 16:42:19] 1 objects removed by acl, 0 objects left (BackendManager.py|1044)
[6] [Oct 23 16:42:19] Traceback: (Logger.py|757)
[6] [Oct 23 16:42:19] File "/usr/lib/python2.7/dist-packages/OPSI/Backend/BackendManager.py", line 944, in _executeMethodProtected
newKwargs = self._filterParams(kwargs, acls)
(Logger.py|757)
[6] [Oct 23 16:42:19] File "/usr/lib/python2.7/dist-packages/OPSI/Backend/BackendManager.py", line 968, in _filterParams
valueList = self._filterObjects(valueList, acls, exceptionOnTruncate=False)
(Logger.py|757)
[6] [Oct 23 16:42:19] File "/usr/lib/python2.7/dist-packages/OPSI/Backend/BackendManager.py", line 1046, in _filterObjects
raise BackendPermissionDeniedError(u"Access denied")
(Logger.py|757)
[6] [Oct 23 16:42:19] ==>>> Backend permission denied error: Access denied (BackendManager.py|948)
[6] [Oct 23 16:42:19] Traceback: (Logger.py|757)
[6] [Oct 23 16:42:19] File "/usr/lib/python2.7/dist-packages/OPSI/Service/JsonRpc.py", line 140, in execute
self.result = eval("instance.%s(*params)" % self.getMethodName())
(Logger.py|757)
[6] [Oct 23 16:42:19] File "<string>", line 1, in <module>
(Logger.py|757)
[6] [Oct 23 16:42:19] File "<string>", line 1, in config_updateObjects
(Logger.py|757)
[6] [Oct 23 16:42:19] File "/usr/lib/python2.7/dist-packages/OPSI/Backend/Backend.py", line 488, in _executeMethod
return meth(**kwargs)
(Logger.py|757)
[6] [Oct 23 16:42:19] File "<string>", line 1, in config_updateObjects
(Logger.py|757)
[6] [Oct 23 16:42:19] File "/usr/lib/python2.7/dist-packages/OPSI/Backend/Backend.py", line 488, in _executeMethod
return meth(**kwargs)
(Logger.py|757)
[6] [Oct 23 16:42:19] File "<string>", line 1, in config_updateObjects
(Logger.py|757)
[6] [Oct 23 16:42:19] File "/usr/lib/python2.7/dist-packages/OPSI/Backend/BackendManager.py", line 949, in _executeMethodProtected
raise BackendPermissionDeniedError(u"Access to method '%s' denied for user '%s': %s" % (methodName, self._username, e))
(Logger.py|757)
[6] [Oct 23 16:42:19] ==>>> Backend permission denied error: Access to method 'config_updateObjects' denied for user 'Berbig': Backend permission denied error: Access denied (JsonRpc.py|145)
[3] [Oct 23 16:42:19] Execution error: Backend permission denied error: Access to method 'config_updateObjects' denied for user 'Berbig': Backend permission denied error: Access denied (JsonRpc.py|146)

Die ini-Datein von Depotserver, und den Clients wurden vorher eingelesen und auch an das Backende übergeben.

Gruß Aimo
Benutzeravatar
n.wenselowski
Ex-uib-Team
Beiträge: 3194
Registriert: 04 Apr 2013, 12:15

Re: Backend permission denied error

Beitrag von n.wenselowski »

Hi Aimo,
AimoB hat geschrieben:Die /etc/opsi/backendManager/acl.conf ist ein link auf die /etc/opsi/backendManag/acl.conf.default
Soweit gut, aber interessant ist letztlich was darin konfiguriert ist. ;)
Relevant wird das später (s.u.)
AimoB hat geschrieben:Loglevel habe ich temporär auf 7 erhöht und nachdem ich den Dienst neu gestartet habe, einen Anmeldeversuch unternommern.

Hier ist ein kleiner Auszug wo ich nicht weiterkomme:
7] [Oct 23 16:42:19] Access control for method 'config_updateObjects' with params {'configs': <UnicodeConfig(id=u'configed.productonclient_displayfields_localboot', description=u'', possibleValues=[u'actionRequest', u'installationInfo', u'installationStatus', u'position', u'priority', u'productId', u'productName', u'stateChange', u'targetConfiguration', u'versionInfo'], defaultValues=[u'actionRequest', u'installationInfo', u'installationStatus', u'productId', u'versionInfo'], editable=False, multiValue=True)>} (BackendManager.py|893)
[7] [Oct 23 16:42:19] Found matching acl for method 'config_updateObjects': [{'denyAttributes': [], 'type': u'sys_group', 'ids': [u'opsiadmin'], 'allowAttributes': []}, {'denyAttributes': [], 'type': u'opsi_depotserver', 'ids': [], 'allowAttributes': []}, {'denyAttributes': [], 'type': u'self', 'ids': [], 'allowAttributes': []}] (BackendManager.py|900)
[7] [Oct 23 16:42:19] Method 'config_updateObjects' using acls: [{'denyAttributes': [], 'type': u'self', 'ids': [], 'allowAttributes': []}] (BackendManager.py|935)
[7] [Oct 23 16:42:19] Partial access to method 'config_updateObjects' granted to user u'Berbig' by acls [{'denyAttributes': [], 'type': u'self', 'ids': [], 'allowAttributes': []}] (BackendManager.py|942)
[7] [Oct 23 16:42:19] Filtering params: {'configs': <UnicodeConfig(id=u'configed.productonclient_displayfields_localboot', description=u'', possibleValues=[u'actionRequest', u'installationInfo', u'installationStatus', u'position', u'priority', u'productId', u'productName', u'stateChange', u'targetConfiguration', u'versionInfo'], defaultValues=[u'actionRequest', u'installationInfo', u'installationStatus', u'productId', u'versionInfo'], editable=False, multiValue=True)>} (BackendManager.py|962)
[6] [Oct 23 16:42:19] Filtering objects by acls (BackendManager.py|993)
[4] [Oct 23 16:42:19] 1 objects removed by acl, 0 objects left (BackendManager.py|1044)
[6] [Oct 23 16:42:19] Traceback: (Logger.py|757)
[6] [Oct 23 16:42:19] File "/usr/lib/python2.7/dist-packages/OPSI/Backend/BackendManager.py", line 944, in _executeMethodProtected
newKwargs = self._filterParams(kwargs, acls)
(Logger.py|757)
[6] [Oct 23 16:42:19] File "/usr/lib/python2.7/dist-packages/OPSI/Backend/BackendManager.py", line 968, in _filterParams
valueList = self._filterObjects(valueList, acls, exceptionOnTruncate=False)
(Logger.py|757)
[6] [Oct 23 16:42:19] File "/usr/lib/python2.7/dist-packages/OPSI/Backend/BackendManager.py", line 1046, in _filterObjects
raise BackendPermissionDeniedError(u"Access denied")
(Logger.py|757)
[6] [Oct 23 16:42:19] ==>>> Backend permission denied error: Access denied (BackendManager.py|948)
[6] [Oct 23 16:42:19] Traceback: (Logger.py|757)
[6] [Oct 23 16:42:19] File "/usr/lib/python2.7/dist-packages/OPSI/Service/JsonRpc.py", line 140, in execute
self.result = eval("instance.%s(*params)" % self.getMethodName())
(Logger.py|757)
[6] [Oct 23 16:42:19] File "<string>", line 1, in <module>
(Logger.py|757)
[6] [Oct 23 16:42:19] File "<string>", line 1, in config_updateObjects
(Logger.py|757)
[6] [Oct 23 16:42:19] File "/usr/lib/python2.7/dist-packages/OPSI/Backend/Backend.py", line 488, in _executeMethod
return meth(**kwargs)
(Logger.py|757)
[6] [Oct 23 16:42:19] File "<string>", line 1, in config_updateObjects
(Logger.py|757)
[6] [Oct 23 16:42:19] File "/usr/lib/python2.7/dist-packages/OPSI/Backend/Backend.py", line 488, in _executeMethod
return meth(**kwargs)
(Logger.py|757)
[6] [Oct 23 16:42:19] File "<string>", line 1, in config_updateObjects
(Logger.py|757)
[6] [Oct 23 16:42:19] File "/usr/lib/python2.7/dist-packages/OPSI/Backend/BackendManager.py", line 949, in _executeMethodProtected
raise BackendPermissionDeniedError(u"Access to method '%s' denied for user '%s': %s" % (methodName, self._username, e))
(Logger.py|757)
[6] [Oct 23 16:42:19] ==>>> Backend permission denied error: Access to method 'config_updateObjects' denied for user 'Berbig': Backend permission denied error: Access denied (JsonRpc.py|145)
[3] [Oct 23 16:42:19] Execution error: Backend permission denied error: Access to method 'config_updateObjects' denied for user 'Berbig': Backend permission denied error: Access denied (JsonRpc.py|146)
Ich habe mal die relevanten Stellen markiert.
Code dazu findet sich hier.
Im Log sollte vorher irgendwo eine Zeile zu finden sein ala "User ... is member of groups". Was zeigt er dort?


Gruß

Niko

Code: Alles auswählen

import OPSI
AimoB
Beiträge: 4
Registriert: 19 Okt 2017, 15:24

Re: Backend permission denied error

Beitrag von AimoB »

Hi Nico
n.wenselowski hat geschrieben: Im Log sollte vorher irgendwo eine Zeile zu finden sein ala "User ... is member of groups". Was zeigt er dort?
Hier wird folgenden angezeigt:
Reading groups of user... (BackendManager.py|836)
[7] [Oct 23 16:42:17] Primary group of user u'...' is u'Domain Users' (BackendManager.py|838)
[7] [Oct 23 16:42:17] User u'...' is member of groups: set([u'Domain Users']) (BackendManager.py|842)
[6] [Oct 23 16:42:17] Operating system authentication successful for user '...', groups 'Domain Users' (BackendManager.py|671)

Ich habe eben noch einmal nachgeschaut. Ich bin in der Gruppe opsiadmin und opsifileadmin.

Gruß Aimo
Benutzeravatar
n.wenselowski
Ex-uib-Team
Beiträge: 3194
Registriert: 04 Apr 2013, 12:15

Re: Backend permission denied error

Beitrag von n.wenselowski »

Hi,

okay, dann kann der opsiconfd nicht die Gruppenzugehörigkeit korrekt auslesen.
Hilft es den Dienst neu zu starten?

EDIT: Was liefert der folgende Befehl bei dir?

Code: Alles auswählen

ucr get samba/interfaces

Gruß

Niko

Code: Alles auswählen

import OPSI
AimoB
Beiträge: 4
Registriert: 19 Okt 2017, 15:24

Re: Backend permission denied error

Beitrag von AimoB »

Hi,

ucr get samba/interfaces liefert keine Fehlermeldung. Wird einfach nur ausgeführt ohne Ausgabe weder Fehler noch Ergebnis.

Habe den Dienst eben noch mal neu gestartet. Jetzt wird die Konfiguration gelesen.

Die Fehlermeldung kommt nicht mehr und sich bekomme alle Informationen vom Depot-Server.

Danke für die Unterstützung

Gruß Aimo
Antworten