Neu DB-Benutzer für die Ameise?

fibergirl

Sehr aktives Mitglied
14. April 2016
833
266
Hallo,

ich möchte jetzt einige Im-und Exporte mit der Ameise als Batchfile formulieren.
Dazu will ich die Commandline-Version der Ameise verwenden.

Jetzt wird mir gerade klar, dass dafür das sa-Passwort im Klartext im Batchfile stehen muss.
Das möchte ich aber gern weder ändern (ist eh nicht mehr im Ursprungswortlaut) noch jedem bekanntgeben, der das Batchfile irgendwann nutzt.

Ich überlege, ob ich nun für die Ameise einen eigenen DB-Benutzer einrichte. Dann brauche ich sa gar nicht anzufassen.
Gibt es da Vorteile oder Nachteile?
Kann die Rollendefinition dann anders aussehen als in der Anleitung für sa? Kann man insbesondere die Rolle "sysadmin" weglassen?

Vielen Dank!
 

marcelj

Mitglied
2. April 2019
48
7
Vielleicht gleich den Schritt machen und es in Powershell umsetzen. Dann Passworte entweder im Credential Store speichern (Windows Anmeldeinformationsverwaltung - ja das ist ein Wort) oder als SecureString in einer Textdatei ablegen.
Durch Debugging des Skripts kommt man jedoch immer an das Klartext PW!

Auszugsweise: Ein PW einlesen und verschlüsseln -> Irgendwo ablegen

Code:
$pw = Read-Host "Passwort für SQL-Datenbank" -AsSecureString
$enc = ConvertFrom-SecureString $pw

Das KlartextPW wiederherstellen

Code:
[System.Security.SecureString]$secure = $verschluesseltes_pw | ConvertTo-SecureString
$marshal = [Runtime.InteropServices.Marshal]
$ptr = $marshal::SecureStringToBSTR($secure)
$klartext_pw = $marshal::PtrToStringBSTR($ptr)
 

fibergirl

Sehr aktives Mitglied
14. April 2016
833
266
Hallo und vielen Dank erstmal @marcelj ,

mit Powershell möchte ich das einstweilen nicht lösen, und auch das sa-Passwort mag ich momentan nicht für jeden User an jedem PC im credential store ablegen.

Ich habe mir jetzt mal im SQL Server Management Studio die Benutzerverwaltung angesehen, die Anmeldung "sa" greift auf alle DBs mit dem Nutzer "dbo" zu und ansonsten mit den Rollen "public" und "sysadmin".

Ich würde dann eine Anmeldung "ameise" erfinden mit genau gleicher Konfiguration, nur ohne die Rolle sysadmin.
Vielleicht kann man diese aber noch weiter eingrenzen, z.B. nur auf die DB "eazybusiness", oder braucht man auch "master" und die anderen?

Muss/sollte es der Benutzer "dbo" sein? Was passiert, wenn ich bei der Einrichtung des Anmeldenamens "ameise" als Benutzer ebenfalls "dbo" angebe, wird dieser dann zerstört oder überschrieben? Traue mich da gerade nicht heran.

Kann JTL da evtl. etwas dazu sagen?
 
Zuletzt bearbeitet:

Björn Berger

Moderator
Mitarbeiter
30. Dezember 2013
1.098
16
Hi
Ein eigener Sql User für die Ameise ist möglich.
Wenn du einen Sql Benutzer über das Sql Management Studio anlegst muss dieser die Sql Server Authentifizierung nutzen
Im Reiter Serverrolle sollte public reichen
Im Reiter Benutzerzuordnung die eazybusiness Datenbank wählen und die Mitgliedschaftsrolle db_owner
Einen Benutzer dbo sollte es eignetlich nicht geben, das ist das Standardschema und wird hier auch verwendet.

Achso und ich rate dringend davon ab die Ameise auf mehreren Rechnern gleichzeitig zu nutzen, die erzeugt ganz schön Last auf dem Sql Server.
 

fibergirl

Sehr aktives Mitglied
14. April 2016
833
266
Herzlichen Dank @Björn Berger , funktioniert wunderbar 🙂

Und nein, natürlich wollen wir die Ameise nicht auf mehreren PCs gleichzeitig laufen lassen.
Geht nur um gelegentlich genutzte "Utilities". Derzeit nur für mich selbst.
 

John

Sehr aktives Mitglied
3. März 2012
4.234
1.099
Berlin
@Björn Berger ich hole das Thema nochmal hervor, weil der eigene SQL Benutzer für die Ameise das Problem imho. nur geringfügig entscherft.

Lässt sich nicht eine Ammeldung der Ameise mit einem Wawi Benutzer und dem verschlüsselten Passwort realisieren, so wie es auch beim Start der Wawi oder des Workers möglich ist?
 

John

Sehr aktives Mitglied
3. März 2012
4.234
1.099
Berlin
Interessant.
Aber das Passwort des Benutzters fragt ihr dann schon (als hash) ab, oder? Steht nichts von im Ticket..
 

Cassiopeia

Sehr aktives Mitglied
9. Mai 2017
542
89
Hallo @John
Gute Idee, machen wir.
Edit:
Erledigt 😉
Nein, Scherz.
Das Thema hatten wir bereits auf dem Schirm und es wurde für die 1.6 bereits umgesetzt.
https://issues.jtl-software.de/issues/WAWI-43403
Wie würde ich die Ameise starten mit einem Benutzer mit verschlüsseltem PW ?
Wenn ich meinen User mit Adminrechten nutze bekomme ich.

Sehe ich das richtig das ich die Ameise nur mit dem DB User starten kann ?

2023-03-27 15_48_37-375 666 110 - AnyDesk.png


Code:
echo on
"C:\Program Files (x86)\JTL-Software\JTL-wawi-ameise.exe" -s IP,PORT\SQL --d eazybusiness -u wawiuser -p password -t EXP3 -o "C:\Users\admin\Desktop\datei.csv"
timeout /t 10

Oder brauch ich extra einen DB User dafür ?
 
Zuletzt bearbeitet:

SebiW

Sehr aktives Mitglied
2. September 2015
3.125
1.633
Mhh sehr interessant das - ich hab auch reihenweise Batches die ich gerne sicher kriegen würde. Ist das mittlerweile implementiert? Soweit ich das Ticket verstehe sollte sich da ja was geändert haben - allerdings ist die Doku noch die gleiche wie früher.
 

Cassiopeia

Sehr aktives Mitglied
9. Mai 2017
542
89
Mhh sehr interessant das - ich hab auch reihenweise Batches die ich gerne sicher kriegen würde. Ist das mittlerweile implementiert? Soweit ich das Ticket verstehe sollte sich da ja was geändert haben - allerdings ist die Doku noch die gleiche wie früher.

Also man kann für den Worker verschlüsselte Passwörter erzeugen also für die Benutzer die diese nutzen. Allerdings hab ich es nicht für die Ameise hinbekommen.
 

Cassiopeia

Sehr aktives Mitglied
9. Mai 2017
542
89
Gibts da seitens JTL eventuell ein Update oder einen Issue Tracker ? Sonst erstell ich mal ein.
 

Ähnliche Themen