In our company ArcGIS Desktop Users have tens of mxd's with saved user credentials. To follow our company standards, users need to change their passwords once in 3 months. For large number of ArcGIS Desktop users it is very difficult to open all MXD's(containing SDE and/or ArcGIS Server connections) and update the passwords. Due to this users end up with locked database account except those who dont save their credentials in document.
Please share the best practices for this scenario.
Our Environment: ArcSDE 10.1, RHEL 6, ArcGIS Desktop 10.1 & 10.3, Oracle 11g2
actually the only possibility to updating and fixing data sources of map documents, layers and table views is using arcpy.mapping. There different methods to switch between datasources: http://desktop.arcgis.com/en/arcmap/latest/analyze/arcpy-mapping/updatingandfixingdatasources.htm. In the case of ArcSDE connections the path incl. password is specified in the connection file. You can use the full path to the file or in cases where the connection file appears in the Database Connections folder, you can provide that string in the path as well. Something like that: map.findAndReplaceWorkspacePath(find_workspace_path=lyr.workspacePath, replace_workspace_path=r"C:\Newpath\To\SDE_ConnectionFile.sde")
Means you have to create new connection files with new passwords and then have to run the script against the map documents.
In version 10.4 there should be a tool for changing passwords.
Let me share a python script which writes information about MXDs to a text document.
1. All MXD files names
2. All MXD files names with their broken layer/table name
This script need to be copied to folder where MXD files are present. Also available on ESRI help.
Thank you Angela for very informative link.