Kann Sicherheitsbefehl nicht ausführen: LocalGroup.AddMember im Benutzeranteil!?

Post Reply
tim.v
Posts: 111
Joined: 01. Feb 2013, 07:54
Location: Berlin
Contact:

Kann Sicherheitsbefehl nicht ausführen: LocalGroup.AddMember im Benutzeranteil!?

Post by tim.v » 17. Jan 2022, 11:00

Hallo,

versuche gerade das erste mal den angemeldeten Benutzer in eine durch das Setup angelegte lokale Gruppe hinzuzufügen, bekomme aber einen Fehler beim ausführen via SWDepot und bei Zuweisung im SWDepot-Log!?

Mittels Empirum PackageEditor via DebugMode mit Benutzeranteil funktioniert es!?

Versuch:

Paket mit /AW

Lösung:

Code: Select all

...
#Security:ProductClient, CLIENT DONTDELETE
...

Code: Select all

...
[Security:ProductClient]
LocalGroup.AddMember ("SPT_Factory","%USERDNSDOMAIN%\%USERNAME%")
...
Fehler:
Kann Sicherheitsbefehl nicht ausführen:

LocalGroup.AddMember ("SPT_Factory","%USERDNSDOMAIN%\%USERNAME%")

Windows-Fehlercode: 5
Zugriff verweigert

Habt Ihr eine Idee? :roll:

LG
Tim

User avatar
Hendrik_Ambrosius
Moderator
Moderator
Posts: 7969
Joined: 13. Dec 2004, 23:10
Location: Adendorf/Lüneburg

Re: Kann Sicherheitsbefehl nicht ausführen: LocalGroup.AddMember im Benutzeranteil!?

Post by Hendrik_Ambrosius » 17. Jan 2022, 12:21

Kann es sein, dass die USERNAME Variable leer ist weil das Script nun im Agent Kontext (local system) läuft?
Hendrik Ambrosius / Senior Presales Consultant
Mobile: +49 172 408 4447 | hendrik.ambrosius@matrix42.com
Matrix42 GmbH | Elbinger Straße 7 | 60487 Frankfurt am Main | Germany | www.matrix42.com

Disclaimer: I participate in this forum on a voluntary basis. Views expressed are not necessarily those of Matrix42 or of the support team.

czimmer
Posts: 18
Joined: 01. Feb 2019, 13:23
Contact:

Re: Kann Sicherheitsbefehl nicht ausführen: LocalGroup.AddMember im Benutzeranteil!?

Post by czimmer » 17. Jan 2022, 12:31

Hallo,

wir stehen genau vor dem gleichen Problem.

Wir müssen "Docker Desktop" auf diverse Clients verteilen, was prinzipiell kein Problem ist.
Allerdings muss auch der lokal angemeldete Benutzer dann in die von Docker während der Installation angelegte lokale Gruppe "docker-users" eingefügt werden. Bei der Installation wird hier automatisch SYSTEM eingefügt, was natürlich keinen Sinn macht.

Wir würden das gerne so lösen, dass die Domainuser in diese Gruppe eingefügt werden, klappt aber nicht.

Wir haben das direkt unter [Security:Product] eingefügt.

Wie muss da die Syntax aussehen?
LocalGroup.AddMember("docker-users","Domain\Domain Users") ?

Kann das während der Installation mit dem Systemuser und mit einer Nicht-Standard-Gruppe überhaupt funktionieren?

Andere Idee von uns wäre gewesen, das Ganze über ein Powershell-Script zu machen, welches mit einem speziellen User aufgerufen wird, der AD-Berechtigungen hat. Ist aber unschön, falls mit diesem Account mal was passiert...

Gruß
Christian
Empirum 23.0.1, UEM Agent 2305.1.2

User avatar
Hendrik_Ambrosius
Moderator
Moderator
Posts: 7969
Joined: 13. Dec 2004, 23:10
Location: Adendorf/Lüneburg

Re: Kann Sicherheitsbefehl nicht ausführen: LocalGroup.AddMember im Benutzeranteil!?

Post by Hendrik_Ambrosius » 17. Jan 2022, 14:01

Ob das geht hängt von den AD-Berechtigungen und Policys ab.
RUNAS könnte funktionieren wenn es nicht auch über GPOs geblockt ist.

Man kann auch den aktuellen User auslesen und dann damit arbeiten:
https://www.digitalcitizen.life/how-gen ... d-windows/

Nicht zuletzt könnt man auch den User über eine Übergabedatei an den Empirum Hauptserver zurückmelden (über das Log oder eine Datei in EMPINV) und dort greift ein in Schleifen laufendes Script (Powershell?) das auf und führt die Berechtigung vom Server aus durch.
Hendrik Ambrosius / Senior Presales Consultant
Mobile: +49 172 408 4447 | hendrik.ambrosius@matrix42.com
Matrix42 GmbH | Elbinger Straße 7 | 60487 Frankfurt am Main | Germany | www.matrix42.com

Disclaimer: I participate in this forum on a voluntary basis. Views expressed are not necessarily those of Matrix42 or of the support team.

tim.v
Posts: 111
Joined: 01. Feb 2013, 07:54
Location: Berlin
Contact:

Re: Kann Sicherheitsbefehl nicht ausführen: LocalGroup.AddMember im Benutzeranteil!?

Post by tim.v » 17. Jan 2022, 14:10

Hendrik_Ambrosius wrote: 17. Jan 2022, 12:21 Kann es sein, dass die USERNAME Variable leer ist weil das Script nun im Agent Kontext (local system) läuft?
Hallo Herr Ambrosius,

ich werde das versuchen zu prüfen..., aber ist es überhaupt möglich einen [Security:XXX]-Abschnitt mit (als) CLIENT auszuführen?
Hab das noch nie gemacht, deshalb die Frage. Der Hilfe konnte ich dazu bisher nichts entlocken :roll:

LG
Tim

tim.v
Posts: 111
Joined: 01. Feb 2013, 07:54
Location: Berlin
Contact:

Re: Kann Sicherheitsbefehl nicht ausführen: LocalGroup.AddMember im Benutzeranteil!?

Post by tim.v » 17. Jan 2022, 14:38

Hallo Herr Ambrosius,

in einem [Security:XXX]-Abschnitt kann ich leider nicht mit z.B. echo ein Debuglog schreiben!?

Code: Select all

#Security:ProductClient, CLIENT DONTDELETE

Code: Select all

[Security:ProductClient]
;=== LOG===
-callhidden cmd.exe /c Echo "Security:ProductClient END [%username%]" >> "%V_DebugLog%"
callhidden cmd.exe /c Echo "Security:ProductClient START [%username%]" >> "%V_DebugLog%"

callhidden cmd.exe /c Echo "%USERDNSDOMAIN%\%USERNAME%" >> "%V_DebugLog%"
;LocalGroup.AddMember ("SPT_Factory","%USERDNSDOMAIN%\%USERNAME%")

;=== LOG===
callhidden cmd.exe /c Echo "Security:ProductClient END [%username%]" >> "%V_DebugLog%"
-callhidden cmd.exe /c Echo "Security:ProductClient START [%username%]" >> "%V_DebugLog%"
In einem [ProductClient]-Abschnitt wird aber korrekt %USERDNSDOMAIN% und %USERNAME% für den Benutzer aufgelößt.

Code: Select all

#Set:ProductClient, CLIENT DONTDELETE

Code: Select all

[Set:ProductClient]
;=== LOG===
callhidden cmd.exe /c Echo "Set:ProductClient START [%username%]" >> "%V_DebugLog%"

callhidden cmd.exe /c Echo "%USERDNSDOMAIN%\%USERNAME%" >> "%V_DebugLog%"

;=== LOG===
callhidden cmd.exe /c Echo "Set:ProductClient END [%username%]" >> "%V_DebugLog%"
Haben sie einen Tipp wie ich den [Security:XXX]-Abschnitt debuggen kann?


LG
Tim

User avatar
Hendrik_Ambrosius
Moderator
Moderator
Posts: 7969
Joined: 13. Dec 2004, 23:10
Location: Adendorf/Lüneburg

Re: Kann Sicherheitsbefehl nicht ausführen: LocalGroup.AddMember im Benutzeranteil!?

Post by Hendrik_Ambrosius » 17. Jan 2022, 16:24

Genau, das geht nur in SET.
Also so was machen wie:
#Security:Teil1
#Set:CALL-was-auch-immer
#Security:Teil2
Hendrik Ambrosius / Senior Presales Consultant
Mobile: +49 172 408 4447 | hendrik.ambrosius@matrix42.com
Matrix42 GmbH | Elbinger Straße 7 | 60487 Frankfurt am Main | Germany | www.matrix42.com

Disclaimer: I participate in this forum on a voluntary basis. Views expressed are not necessarily those of Matrix42 or of the support team.

tim.v
Posts: 111
Joined: 01. Feb 2013, 07:54
Location: Berlin
Contact:

Re: Kann Sicherheitsbefehl nicht ausführen: LocalGroup.AddMember im Benutzeranteil!?

Post by tim.v » 18. Jan 2022, 09:25

Hallo nochmal,

ich habe folgendes versucht:

Code: Select all

;=== LOG===
callhidden cmd.exe /c Echo "Security:Product START [%username%]" >> "%V_DebugLog%"
-callhidden cmd.exe /c Echo "Security:Product END [%username%]" >> "%V_DebugLog%"
#Security:Product, CLIENT
;=== LOG===
callhidden cmd.exe /c Echo "Security:Product END [%username%]" >> "%V_DebugLog%"
-callhidden cmd.exe /c Echo "Security:Product START [%username%]" >> "%V_DebugLog%"
#Set:Tmp:ProductClient, CLIENT
;=== LOG===
callhidden cmd.exe /c Echo "Security:ProductClient START [%username%]" >> "%V_DebugLog%"
-callhidden cmd.exe /c Echo "Security:ProductClient END [%username%]" >> "%V_DebugLog%"
#Security:ProductClient, CLIENT
;=== LOG===
callhidden cmd.exe /c Echo "Security:ProductClient END [%username%]" >> "%V_DebugLog%"
-callhidden cmd.exe /c Echo "Security:ProductClient START [%username%]" >> "%V_DebugLog%"

Code: Select all


[Security:Product]
;LocalGroup.AddMember ("SPT_Factory","%USERDNSDOMAIN%\%USERNAME%")

[Set:Tmp:ProductClient]
callhidden cmd.exe /c Echo "%USERDNSDOMAIN%\%USERNAME%" >> "%V_DebugLog%"

[Security:ProductClient]
;LocalGroup.AddMember ("SPT_Factory","%USERDNSDOMAIN%\%USERNAME%")
Das Ergebnis ist sehr merkwürdig

Log (SYSTEM):
"Security:Product START [SYSTEM]"
"Security:Product END [SYSTEM]"
"Security:ProductClient START [SYSTEM]"
"Security:ProductClient END [SYSTEM]"
Log (CLIENT):
"Security:Product END [<Benutzername>]"
"<Domäne>\<Benutzername>"
"Security:ProductClient START [<Benutzername>]"
"Security:ProductClient END [<Benutzername>]"
Der "Security:Product"-Abschnitt wird scheinbar im CLIENT-Anteil nicht gestartet, sondern nur beendet!? "Security:Product START [<Benutzername>]" wird nicht geschrieben!? Der temporäre Abschnitt [Set:Tmp:ProductClient] wird ordnungsgemäß ausgeführt und die Variablen aufgelößt.

Beim Uninstall verhält es sich genau so!?

Wenn ich jetzt im [Security:Product]-Abschnitt LocalGroup.AddMember einkommentiere wird dieser auch nicht mehr beendet, da ja Fehler:
Kann Sicherheitsbefehl nicht ausführen: LocalGroup.AddMember ("SPT_Factory","%USERDNSDOMAIN%\%USERNAME%") Windows-Fehlercode: 5 Zugriff verweigert
kommt. Ausgeführt wird er aber ja scheinbar, sonst würde der Fehler ja nicht kommen.

Wenn ich das Ganze jetzt aber noch einmal Revue passiere, dann müsste ja ein Benutzer das Recht haben sich selbst in eine lokale Gruppe zu heben, was ja auch manuell gar nicht geht. Ergo, kann er das im Benutzeranteil auch nicht.

Das bedeutet das es mit einem Empirum-Paket so gar nicht funktionieren kann :roll:

Post Reply

Return to “Paketierung”

Who is online

Users browsing this forum: No registered users and 1 guest