HOW TO

Programmgesteuertes Aktualisieren einer Passwort-Änderung in einem in ArcGIS-Server registrierten Data Store

Last Published: July 27, 2022

Zusammenfassung

In manchen Fällen ist es erforderlich, eine geplante Passwort-Änderung für eine Datenquelle, die in ArcGIS Data Store registriert ist, durchzuführen, wie zum Beispiel eine Datenbank, um den gesicherten Zugang zu erhalten. Dies ist durch das manuelle Importieren der .sde-Verbindungsdatei von ArcGIS-Server möglich. Dieser Prozess kann jedoch mit vielen zu importierenden .sde-Dateien für eine Organisation aufwändig sein. Durch das arcgis.gis-Modul in ArcGIS API for Python kann dieser Prozess automatisiert werden.

In diesem Artikel werden die Schritte zur Automatisierung einer Passwort-Änderung in einem registrierten Data Store beschrieben.

Vorgehensweise

  1. Importieren Sie die erforderlichen Module.
import arcpy from arcgis.gis import GIS
  1. Verbinden Sie sich mit einem Administratorkonto mit dem Portal.
gis = GIS("https://machine_name.domain:7443/arcgis/home","username", "password", verify_cert=False) print("connected")
  1. Listen Sie alle verfügbaren Server im Portal auf.
dstores = server1.datastores.list() dstores
  1. Erstellen Sie eine SDE-Datei, um eine Verbindung mit der Datenbank herzustellen. Weitere Informationen hierzu finden Sie unter ArcGIS Pro: Datenbankverbindung erstellen (Data Management).
arcpy.CreateDatabaseConnection_management("C:\\MyProject", "test.sde", "SQL_SERVER", "SQL Server", "OPERATING_SYSTEM_AUTH")
  1. Erstellen Sie eine Verbindungszeichenfolge für die zu aktualisierende Datenbank mit der Methode generate_connection_string(). Der Code generiert eine Verbindungszeichenfolge, die beim Erstellen eines neuen Datenelements verwendet wird.
server1.datastores.generate_connection_string(r"C:\\MyProject\test.sde")
Beispielergebnis einer Verbindungszeichenfolge für ArcGIS Data Store
  1. Suchen Sie den Index der Data Store-Elemente aus den in Schritt 3 aufgelisteten Data Stores.
ds = dstores[N] ds
  1. Erstellen Sie ein Datenelement mit dem aktualisierten Passwort.
pro2 = { "path": "/enterpriseDatabases/testDsfunc", //a unique path on the server "type": "egdb", //as this is a database "info": { "dataStoreConnectionType": "shared", "isManaged": "false", "connectionString": "<Connection string result from step 4>" } }
  1. Aktualisieren Sie das Passwort im Data Store.
ds.update(pro2)

Nachfolgend finden Sie den vollständigen Code:

from arcgis.gis import GIS gis = GIS("https://machine_name.domain:7443/arcgis/home","username", "username", verify_cert=False) print("connected") gis_servers = gis.admin.servers.list() gis_servers server1 = gis_servers[0] dstores = server1.datastores.list() dstores arcpy.CreateDatabaseConnection_management("C:\Users\user\Desktop\Test", "test.sde", "SQL_SERVER", "SQL Server", "OPERATING_SYSTEM_AUTH") server1.datastores.generate_connection_string(r"C:\Users\user\Desktop\Test\test.sde") ds = dstores[9] ds pro2 = { "path": "/enterpriseDatabases/testDsfunc", //a unique path on the server "type": "egdb", //as this is a database "info": { "dataStoreConnectionType": "shared", "isManaged": "false", "connectionString": "ENCRYPTED_PASSWORD=sample_1;SERVER=User;INSTANCE=sde:sqlserver:User;DBCLIENT=sqlserver;DB_CONNECTION_PROPERTIES=User;DATABASE=dsfunc;USER=sde;VERSION=sde.DEFAULT;AUTHENTICATION_MODE=DBMS" } } ds.update(pro2)

Artikel-ID: 000022551

Benachrichtigungen erhalten und Lösungen für neue oder häufige Probleme finden

Unser neuer KI-Chatbot stellt zusammengefasste Antworten und Videolösungen für Sie bereit.

Esri Support App herunterladen

Zugehörige Informationen

Weitere Informationen zu diesem Thema erkunden

Unterstützung durch ArcGIS-Experten anfordern

An den technischen Support wenden

Esri Support App herunterladen

Zu Download-Optionen wechseln