Español

Preguntas frecuentes: ¿Es posible almacenar las propiedades de conexión de administración de geodatabase en la memoria de la CPU mientras hay un script de Python en ejecución?

Pregunta

Preguntas frecuentes: ¿Es posible almacenar las propiedades de conexión de administración de geodatabase en la memoria de la CPU mientras hay un script de Python en ejecución?

Respuesta

Los scripts de Python se pueden utilizar para realizar tareas de administración en una conexión de geodatabase, por ejemplo, agregar inicios de sesión y administrar el acceso de usuarios. Para conectar y desconectar usuarios de la geodatabase, se requiere un archivo de conexión de ArcSDE para que actúe como administrador de la geodatabase. El archivo de conexión de ArcSDE se crea al iniciar el script de Python con la función CreateArcSDEConnectionFile_management() de ArcPy, y este se guarda como archivo .sde en el disco duro. Para obtener más información, consulte el documento de la ayuda web ArcGIS Desktop: Crear archivo de conexión de ArcSDE.

El archivo de conexión de ArcSDE contiene las propiedades de conexión de administración de la geodatabase, que albergan información confidencial (por ejemplo, credenciales de inicio de sesión). En la mayoría de los casos, no se recomienda almacenar el archivo SDE en el disco duro, ya que tanto el archivo como la información que contiene quedan expuestos a varios usuarios.

No es posible almacenar el archivo de conexión de ArcSDE en la memoria de la CPU porque la herramienta de geoprocesamiento de ArcPy utilizada para desconectar usuarios requiere un archivo SDE como entrada. La alternativa para impedir que el archivo de conexión SDE permanezca en el disco duro consiste en eliminar el archivo de conexión SDE al final del script de Python. Puede hacerlo con la función os.remove() de Python.

En la siguiente muestra de código se indica cómo utilizar la función os.remove().

import arcpy

folderName = r"c:\connectionFiles"
fileName = "SDE_connection.sde"
serverName = "gpserver"

SDE_connection = arcpy.CreateArcSDEConnectionFile_management (folderName, fileName, serverName)
...
... 
os.remove("SDE_connection.sde")

 

Related Information