Jump to content
LassMa

User in Gruppe einbuchen / ausbuchen

Recommended Posts

Hallo,

 

Ich würde gerne ein Skript erstellen, welches einen User einer Gruppe hinzufügt.

Ich habe bereits ein Skript zusammengeschustert, welches prüft, ob ein Anrufer (interner User) sich in einer "Berechtigungs-Gruppe" befindet und wie viele Teilnehmer sich schon in der Zielgruppe befinden.

Was mir aber fehlt, ist eine Funktion, welche den User nun wirklich einer Gruppe hinzufügt oder diesen wieder aus einer Gruppe entfernt.

Natürlich habe ich schon mit den Powershell Cmd-lets ein signiertes Skript erstellt, welches standalone auch funktioniert, sich aber leider als Aufruf über das VBscript einfach nicht rechtetechnisch und Ablauf-technisch einwandfrei umsetzen lässt.
Der SwyxServer Dienste-User sollte keine System-Administrator rechte haben und ist ja eigentlich nicht dafür gedacht, ...somit muss ich eigentlich einen anderen User für den Skript Aufruf verwenden, dessen Passwort ich dann eigentlich irgendwo hinterlegen muss,....
Im VB Script in die Ipbx Datenbank schreiben soll man ja auch nicht....obwohl es da wahrscheinlich am einfachsten wäre in der Tabelle "membership" Gruppe und User zu ergänzen oder zu entfernen.... hier ist aber auch wieder rechte Technisch zu beachten, dass der Service-User dann Schreibrechte auf die DB bräuchte.

Gibt es nicht irgendeine Funktion, die ich direkt im VBscipt unbedenklich nutzen kann ohne die Anlage zu kompromittieren?

Zusatzprodukte wie VisualGroups sind ganz nett. Es geht mir aber nicht um die Warteschlange, sondern explizit um das Ein- und Ausbuchen. Da ich das auch an anderer Stelle sehr nützlich finde.

 

Ich hoffe, dass ich meine Frage in das richtige Topic eingeordnet habe und hoffe auf die Kraft des Forums.

 

Vielen dank schon mal an alle, die sich das Problem durchgelesen haben.

 

Share this post


Link to post
Share on other sites
2 hours ago, LassMa said:

 

Natürlich habe ich schon mit den Powershell Cmd-lets ein signiertes Skript erstellt, welches standalone auch funktioniert, sich aber leider als Aufruf über das VBscript einfach nicht rechtetechnisch und Ablauf-technisch einwandfrei umsetzen lässt.
Der SwyxServer Dienste-User sollte keine System-Administrator rechte haben und ist ja eigentlich nicht dafür gedacht, ...somit muss ich eigentlich einen anderen User für den Skript Aufruf verwenden, dessen Passwort ich dann eigentlich irgendwo hinterlegen muss,....

 

Vermutlich würde es gehen, wenn du in der Swyx einen Benutzer anlegst, der den entsprechenden administrations Level hat. Und den verknüpft du mit dem AD Benutzer swyx service account.

 

Aber bevor ich das mache, würde ich glaube ich ein paar Nächte darüber schlafen wollen...

 

Alternative Ideen:

- ich bin kein Windows Experte, aber gibt es nicht die Möglichkeit, bestimmte Skripte/Programme mit den Rechten eines anderen Benutzers laufen zu lassen? Also vergleichbar sudo oder setuid unter Linux?

 

- wir arbeiten bei sowas immer mit einer Kapselung via Auftragsliste. Also im call Routing wird nur der Auftrag geschrieben, und ein zweiter Job außerhalb des call routings reagiert darauf und arbeitest den Auftrag ab. 

 

etwas weniger aufwendig könnte man das z.b. machen, indem du per VBScript eine Datei anlegst, dann getriggert (siehe http://quickdevtips.blogspot.com/2012/12/how-to-monitor-folder-and-trigger.html?m=1 ) in deinem powershell script auf die Datei oder deren Inhalt hin reagierst

Share this post


Link to post
Share on other sites

hi,

 

erstmal vielen Dank für die schnelle Antwort finde ich echt super cool.

Wie gesagt ich will die Umgebung nicht unbedingt irgendwelchen Risiken aussetzen.

 

Zu deiner Alternative RunAs ...

Klar kann man das Scipt mit einem anderen Benutzer ausführen.... ich muss wenn ich keinen Prompt haben will irgendwo die credentials hinterlegen. (ja man kann einen verschlüsselten String in einer .txt hinterlegen - ist aber auch nicht die aller schönste Lösung)

 

Zum Thema Kapselung ...

Inder Windows Aufgabenplanung könnten  man sogar gleich den passenden Windows Benutzer angeben unter dessen Konto das laufen soll.....und das ohne das Kennwort irgendwo in einem File hinterlegen zu müssen.

...Ich denke darauf wird es hinauslaufen.

 

Ich habe mir noch die PersistentVariables angeschaut, will aber nicht unbedingt eine zusätzlich Datenbank haben um deren Sicherung ich mich dann kümmern muss.

Außerdem will ich bei Skripten, in denen ich nur die Gruppenzugehörigkeit prüfen will mich auf die Swyx-Gruppen verlassen können und nicht unbedingt auf eine Erweiterung, die mir nach einem Update vielleicht um die Ohren fliegt.

 

Schade, dass es nicht ganz kompakt funktioniert, aber ich finde den Denkanstoß gut.

Ich melde, wenn es funktioniert.

 

Schönen Abend

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×