Ich arbeite an einem Python-Skript zum Verwalten von ArcGIS Server-Diensten (Veröffentlichen neuer Dienste, Aktualisieren vorhandener Dienste, Löschen alter Dienste usw.) im Batch in mehreren Umgebungen (z. B. Entwickler, Test und Produktion) und Instanzen (2+ pro Umgebung).
Zum Veröffentlichen von Diensten können Sie ArcPy- und AGS-Verbindungsdateien verwenden. Um jedoch darüber hinausgehende Aufgaben auszuführen (z. B. vorhandene Dienste auflisten, Dienste starten / stoppen / löschen), müssen Sie die AGS Admin REST-API verwenden , die die tokenbasierte Authentifizierung verwendet. und um ein Token zu erhalten , müssen Sie den Namen und das Passwort des Benutzers eingeben.
Es wäre für den Benutzer mühsam, jedes Mal die Server-URL, den Benutzernamen und das Kennwort anzugeben, insbesondere wenn er wie in meinem Skript mit mehr als einer AGS-Instanz gleichzeitig arbeitet. Ich würde es sehr bevorzugen, wenn sie stattdessen nur ihre bereits vorhandenen AGS-Verbindungsdateien verwenden könnten, die sie unabhängig davon für die Veröffentlichung benötigen.
Gibt es eine Möglichkeit, die Verbindungsinformationen (z. B. Server-URL, Benutzername, Kennwort) .ags
programmgesteuert aus einer AGS-Verbindungsdatei ( ) abzurufen - idealerweise mit Python? arcpy.Describe
betrachtet sie als dumme Dateien und kann nichts mit ihnen anfangen.
Wenn dies nicht möglich ist, muss ich wahrscheinlich einen zusätzlichen Konfigurationsschritt benötigen, um die Token für eine lange Zeit lokal zu generieren und zu speichern, da es zu umständlich wäre, den Benutzer jedes Mal zur Eingabe von Anmeldeinformationen für jede AGS-Instanz auffordern zu müssen Sie verwenden das Skript.