更新凭据
在 Automation Suite 操作期间更新存储在密码存储区中的凭据。
准则
要更新不同 Automation Suite 组件的凭据,请执行以下步骤:
- 生成
input.json文件。 - 在
input.json中提供给定组件的新凭据,如每个组件部分中所述。 - 按照每个组件部分中的说明运行
uipathctlCLI。
生成 input.json 文件
生成最新的input.json文件,如下所示:
- 答:要获取
input.json文件的最新修订,请运行以下命令:uipathctl manifest get-revision --namespace <uipath>uipathctl manifest get-revision --namespace <uipath> - B :要列出所有过去的
input.json文件并确定要选择的文件,请运行以下命令:uipathctl manifest list-revisions --namespace <uipath>uipathctl manifest list-revisions --namespace <uipath>
更新 SQL 连接字符串
在多种情况下,您可能需要更新 Automation Suite 产品用于连接 SQL 数据库的连接字符串,例如:
-
出于安全性和合规性考虑,定期轮换用于连接到数据库的密码时
-
更改 SQL Server 的 FQDN 时
-
出于维护目的将数据库迁移到另一个 SQL Server 时
-
添加、修改或删除一个或多个连接属性,例如
MultiSubnetFailover -
从基本身份验证切换到使用 Kerberos 和 AD 的集成身份验证时
重要提示:Automation Suite 中的产品在更新 SQL 数据库连接字符串时不会创建表或架构。 确保新的连接字符串引用您当前使用的同一数据库。
为避免在更新过程中出现停机,请确保当前连接字符串在更新过程中有效。 您可以在更新后撤销旧的连接字符串。
更新已安装产品的连接字符串
要更新 Automation Suite 中已安装产品的连接字符串,请连接到任何服务器节点并执行以下操作。
- 生成
input.json文件。 - 在
input.json中为已安装的产品提供新的连接字符串。 - 运行
uipathctl manifest apply命令。
为已安装的产品提供新的连接字符串
有两种方法可以为 Automation Suite 中运行的产品提供连接字符串:
- 答:提供一个对在 Automation Suite 中运行的所有产品通用的连接字符串模板。 此方法将假定所有产品的默认数据库名称。
- B:提供特定于每个产品的连接字符串。
请确保对 NET、JDBC 或 ODBC 密码进行转义,如下所示:
- 对于 NET:在密码的开头和结尾添加
',并将任何其他'添加一倍。 - 对于 JDBC/ODBC:在密码的开头添加
{,在结尾添加},并将任何其他}双击。不要加倍{。
如果设置了TrustServerCertificate=False ,则可能必须为 SQL Server 提供其他 CA 证书。如果 SQL Server 证书是自签名证书或由内部 CA 签名,则这是必需的。有关详细信息,请参阅更新 CA 证书。
要使用 PowerShell 对 Base64 字符串进行编码或解码,您可以使用以下命令:
- 解码 Base64 字符串:
[System.Text.Encoding]::Default.GetString([System.Convert]::FromBase64String('<base64_string>')) - 对 Base64 字符串进行编码:
[System.Convert]::ToBase64String([System.Text.Encoding]::Default.GetBytes('<plain_text>'))
答:为所有产品提供通用连接字符串
Automation Suite 中运行的所有产品都引用一个通用模板连接字符串。 选择此方法的一个用例是,您想一次更改所有产品的密码。请注意,在这种情况下,所有产品的密码都相同。
在这种情况下,所有产品的数据库名称必须是默认名称,这是 Automation Suite 的要求。 如果您配置的数据库名称不满足 Automation Suite 要求,请执行下一步。
在SQL 数据库中查看数据库列表及其默认名称。
下表说明了产品服务接受的模板格式:
| 参数 | 描述 | 产品 |
|---|---|---|
sql_connection_string_template | 完整的 ADO.NET 连接字符串,其中目录名称设置为 DB_NAME_PLACEHOLDER。安装程序将使用已安装的套件服务的默认数据库名称替换此占位符。 | 平台、Orchestrator、Automation Suite Robot、Test Manager、Automation Hub、Automation Ops、Insights、Data Service、Process Mining、ECS、LLM 网关、LLM 可观察性、解决方案、Maestro、智能体 |
sql_connection_string_template_jdbc | 完整的 JDBC 连接字符串,其中数据库名称设置为 DB_NAME_PLACEHOLDER。安装程序将使用已安装的套件服务的默认数据库名称替换此占位符。 | AI Center |
sql_connection_string_template_odbc | 完整的 ODBC 连接字符串,其中数据库名称设置为 DB_NAME_PLACEHOLDER。安装程序将使用已安装的套件服务的默认数据库名称替换此占位符。 | Document Understanding Apps |
sql_connection_string_template_sqlalchemy_pyodbc | 完整的 SQL alchemy ODBC连接字符串,其中数据库名称设置为DB_NAME_PLACEHOLDER 。安装程序将使用已安装的套件服务的默认数据库名称替换此占位符。 | Document Understanding |
postgresql_connection_string_template_sqlalchemy_pyodbc | 完整的 SQL alchemy PSYCOPG2连接字符串,其中数据库名称设置为 DB_NAME_PLACEHOLDER。安装程序将使用已安装的套件服务的默认数据库名称替换此占位符。 | Process Mining |
postgresql_connection_string_template_sqlalchemy_asyncpg | 完整的 PostgreSQL 连接字符串,其中数据库名称设置为 DB_NAME_PLACEHOLDER。安装程序将使用已安装的套件服务的默认数据库名称替换此占位符。 | Autopilot for Developers |
sql_connection_string_template 示例
Server=tcp:sfdev1804627-c83f074b-sql.database.windows.net:1433;Initial Catalog=DB_NAME_PLACEHOLDER;Persist Security Info=False;User Id=testadmin;Password=***;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;
Server=tcp:sfdev1804627-c83f074b-sql.database.windows.net:1433;Initial Catalog=DB_NAME_PLACEHOLDER;Persist Security Info=False;User Id=testadmin;Password=***;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;
sql_connection_string_template_jdbc 示例
jdbc:sqlserver://sfdev1804627-c83f074b-sql.database.windows.net:1433;database=DB_NAME_PLACEHOLDER;user=testadmin;password=***;encrypt=true;trustServerCertificate=false;Connection Timeout=30;hostNameInCertificate=sfdev1804627-c83f074b-sql.database.windows.net"
jdbc:sqlserver://sfdev1804627-c83f074b-sql.database.windows.net:1433;database=DB_NAME_PLACEHOLDER;user=testadmin;password=***;encrypt=true;trustServerCertificate=false;Connection Timeout=30;hostNameInCertificate=sfdev1804627-c83f074b-sql.database.windows.net"
sql_connection_string_template_odbc 示例
SERVER=sfdev1804627-c83f074b-sql.database.windows.net,1433;DATABASE=DB_NAME_PLACEHOLDER;DRIVER={ODBC Driver 17 for SQL Server};UID=testadmin;PWD=***;MultipleActiveResultSets=False;Encrypt=YES;TrustServerCertificate=NO;Connection Timeout=30;"
SERVER=sfdev1804627-c83f074b-sql.database.windows.net,1433;DATABASE=DB_NAME_PLACEHOLDER;DRIVER={ODBC Driver 17 for SQL Server};UID=testadmin;PWD=***;MultipleActiveResultSets=False;Encrypt=YES;TrustServerCertificate=NO;Connection Timeout=30;"
sql_connection_string_template_sqlalchemy_pyodbc 示例
"mssql+pyodbc://testadmin%40sfdev4515230-sql.database.windows.net:<password>@sfdev4515230-sql.database.windows.net:1433/DB_NAME_PLACEHOLDER?driver=ODBC+Driver+17+for+SQL+Server"
"mssql+pyodbc://testadmin%40sfdev4515230-sql.database.windows.net:<password>@sfdev4515230-sql.database.windows.net:1433/DB_NAME_PLACEHOLDER?driver=ODBC+Driver+17+for+SQL+Server"
postgresql_connection_string_template_sqlalchemy_pyodbc 示例
"postgresql+psycopg2://testadmin:<password>@sfdev8454496-postgresql.postgres.database.azure.com:5432/DB_NAME_PLACEHOLDER"
"postgresql+psycopg2://testadmin:<password>@sfdev8454496-postgresql.postgres.database.azure.com:5432/DB_NAME_PLACEHOLDER"
使用要更新的新连接字符串模板更新input.json 。
B:提供特定于每个产品的连接字符串
平台
Platform 服务提供管理功能,例如组织和租户管理、许可管理、用户管理等。 Platform 服务默认处于启用状态,并且无法删除。 其默认数据库名称为AutomationSuite_Platform 。
要为 Platform 服务提供连接字符串,请在input.json文件中添加或更新以下部分:
"platform": {
"sql_connection_str": "***" // dotnet connection string
}
"platform": {
"sql_connection_str": "***" // dotnet connection string
}
Orchestrator
Orchestrator 的默认数据库名称为AutomationSuite_Orchestrator 。
要为 Orchestrator 服务提供连接字符串,请在input.json文件中添加或更新以下部分:
"orchestrator": {
"sql_connection_str": "***" // dotnet connection string
}
"orchestrator": {
"sql_connection_str": "***" // dotnet connection string
}
Automation Suite 机器人
默认情况下,Automation Suite 机器人和 Orchestrator 共享同一数据库。 数据库名称为AutomationSuite_Orchestrator 。
要为 Automation Suite 机器人提供连接字符串,请在input.json文件中添加或更新以下部分:
"asrobots": {
"sql_connection_str": "***" // dotnet connection string
}
"asrobots": {
"sql_connection_str": "***" // dotnet connection string
}
Automation Hub
Automation Hub 的默认数据库名称为AutomationSuite_Automation_Hub 。
要为 Automation Suite 服务提供连接字符串,请在input.json文件中添加或更新以下部分:
"automation_hub": {
"sql_connection_str": "***" // dotnet connection string
}
"automation_hub": {
"sql_connection_str": "***" // dotnet connection string
}
Automation Ops
Automation Ops 的默认数据库名称为AutomationSuite_Platform 。
要为 Automation Ops 服务提供连接字符串,请在input.json文件中添加或更新以下部分:
"automation_ops": {
"sql_connection_str": "***" // dotnet connection string
}
"automation_ops": {
"sql_connection_str": "***" // dotnet connection string
}
AI Center
AI Center 的默认数据库名称为AutomationSuite_AICenter 。
要为 AI Center 服务提供连接字符串,请在input.json文件中添加或更新以下部分:
"aicenter": {
"sql_connection_str": "***" // jdbc connection string
}
"aicenter": {
"sql_connection_str": "***" // jdbc connection string
}
Agents (智能体)
智能体的默认数据库名称是AutomationSuite_Agents 。
要为 AI Center 服务提供连接字符串,请在input.json文件中添加或更新以下部分:
"agents": {
"sql_connection_str": "" //Optional and only require to override the default database name - dotnet connection string
}
"agents": {
"sql_connection_str": "" //Optional and only require to override the default database name - dotnet connection string
}
Apps
Apps 的默认数据库名称为 AutomationSuite_Apps。
要为 Apps 服务提供连接字符串,请在 input.json 文件中添加或更新以下部分:
"apps": {
"sql_connection_str": "***" // odbc connection string
}
"apps": {
"sql_connection_str": "***" // odbc connection string
}
Data Service
Data Service 的默认数据库名称为AutomationSuite_DataService 。
要为 Data Service 服务提供连接字符串,请在input.json文件中添加或更新以下部分:
"dataservice": {
"sql_connection_str": "***" // dotnet connection string
}
"dataservice": {
"sql_connection_str": "***" // dotnet connection string
}
Document Understanding
Document Understanding 的默认数据库名称为AutomationSuite_DU_Datamanager 。
要为 Document Understanding 服务提供连接字符串,请在input.json文件中添加或更新以下部分:
"documentunderstanding": {
"enabled": true,
"sql_connection_str": "***" // dotnet connection string,
"datamanager": {
"sql_connection_str": "***" // odbc connection string
"pyodbc_sql_connection_str": "***" // python sql connection string
}
}
"documentunderstanding": {
"enabled": true,
"sql_connection_str": "***" // dotnet connection string,
"datamanager": {
"sql_connection_str": "***" // odbc connection string
"pyodbc_sql_connection_str": "***" // python sql connection string
}
}
Insights
Insights 的默认数据库名称为AutomationSuite_Insights 。
要为 Insights 服务提供连接字符串,请在input.json文件中添加或更新以下部分:
"insights": {
"sql_connection_str": "***" // dotnet connection string
}
"insights": {
"sql_connection_str": "***" // dotnet connection string
}
Process Mining
Process Mining 的默认数据库名称为AutomationSuite_ProcessMining_Metadata 。
要为 Process Mining 服务提供连接字符串,请在input.json文件中添加或更新以下部分:
"process_mining": {
"enabled": true,
"sql_connection_str": "***", // dotnet connection string
"airflow": {
"metadata_db_connection_str": ""
},
"warehouse": {
"sql_connection_str": "",
"master_sql_connection_str": "",
"sqlalchemy_pyodbc_sql_connection_str": ""
}
}
"process_mining": {
"enabled": true,
"sql_connection_str": "***", // dotnet connection string
"airflow": {
"metadata_db_connection_str": ""
},
"warehouse": {
"sql_connection_str": "",
"master_sql_connection_str": "",
"sqlalchemy_pyodbc_sql_connection_str": ""
}
}
Test Manager
Test Manager 的默认数据库名称为AutomationSuite_Test_Manager 。
要为 Test Manager 服务提供连接字符串,请在input.json文件中添加或更新以下部分:
"test_manager": {
"sql_connection_str": "***" // dotnet connection string
}
"test_manager": {
"sql_connection_str": "***" // dotnet connection string
}
Integration Services
Integration Services 的默认数据库名称为AutomationSuite_Integration_Services 。
要提供连接字符串,请在input.json文件中添加或更新以下部分:
"integrationservices": {
"sql_connection_str": "***" // dotnet connection string
}
"integrationservices": {
"sql_connection_str": "***" // dotnet connection string
}
Studio Web
Studio Web 的默认数据库名称为AutomationSuite_StudioWeb 。
要提供连接字符串,请在input.json文件中添加或更新以下部分:
"studioweb": {
"sql_connection_str": "***" // dotnet connection string
}
"studioweb": {
"sql_connection_str": "***" // dotnet connection string
}
上下文基础服务
上下文基础的默认数据库名称为AutomationSuite_ECS和AutomationSuite_ECSVector 。
要提供连接字符串,请在input.json文件中添加或更新以下部分:
"ecs": {
"enabled": true, //Set to "false" to disable
"sql_connection_str": "", //Optional and only required to override the default database name - dotnet connection string
"sql_vector_connection_str": "", //Optional and only required to override the default database name - dotnet connection string
}
"ecs": {
"enabled": true, //Set to "false" to disable
"sql_connection_str": "", //Optional and only required to override the default database name - dotnet connection string
"sql_vector_connection_str": "", //Optional and only required to override the default database name - dotnet connection string
}
LLM 网关
LLM 网关的默认数据库名称为AutomationSuite_LLMGateway 。
要提供连接字符串,请在input.json文件中添加或更新以下部分:
"llmgateway": {
"enabled": true, //Set to "false" to disable
"sql_connection_str": "" //Optional and only required to override the default database name - dotnet connection string
}
"llmgateway": {
"enabled": true, //Set to "false" to disable
"sql_connection_str": "" //Optional and only required to override the default database name - dotnet connection string
}
LLM 可观察性
LLM 可观察性的默认数据库名称为AutomationSuite_Llmops 。
要提供连接字符串,请在input.json文件中添加或更新以下部分:
"llmobservability": {
"enabled": true, //Set to "false" to disable
"sql_connection_str": "" //Optional and only required to override the default database name - dotnet connection string
}
"llmobservability": {
"enabled": true, //Set to "false" to disable
"sql_connection_str": "" //Optional and only required to override the default database name - dotnet connection string
}
Solutions (解决方案)
自动化解决方案的默认数据库名称为AutomationSuite_AutomationSolutions 。
要提供连接字符串,请在input.json文件中添加或更新以下部分:
"automationsolutions": {
"enabled": true, //Set to "false" to disable
"sql_connection_str": "", //Optional and only required to override the default database name - dotnet connection string
}
"automationsolutions": {
"enabled": true, //Set to "false" to disable
"sql_connection_str": "", //Optional and only required to override the default database name - dotnet connection string
}
Maestro
Maestro 的默认数据库名称为AutomationSuite_Maestro 。
要提供连接字符串,请在input.json文件中添加或更新以下部分:
"maestro": {
"enabled": true, //Set to "false" to disable
"sql_connection_str": "" //Optional and only required to override the default database name - dotnet connection string
}
"maestro": {
"enabled": true, //Set to "false" to disable
"sql_connection_str": "" //Optional and only required to override the default database name - dotnet connection string
}
时间即服务 (TaaS)
TaaS 的默认数据库名称为:
- 对于持久性存储:
AutomationSuite_Taas - 对于可见性存储:
AutomationSuite_Taas_Visibility
要提供连接字符串,请在input.json文件中添加或更新以下部分:
"taas": {
"enabled": true, //Set to "false" to disable
"temporal": {
"postgresql_connection_str": "", //Optional and only required to override the default database name - postgresql connection string
"postgresql_visibility_connection_str": "" //Optional and only required to override the default database name - postgresql connection string
}
}
"taas": {
"enabled": true, //Set to "false" to disable
"temporal": {
"postgresql_connection_str": "", //Optional and only required to override the default database name - postgresql connection string
"postgresql_visibility_connection_str": "" //Optional and only required to override the default database name - postgresql connection string
}
}
Autopilot for Developers
Autopilot for Developers 的默认数据库名称为AutomationSuite_A4D 。
要提供连接字符串,请在input.json文件中添加或更新以下部分:
"a4d": {
"enabled": true, //Set to "false" to disable
"sqlalchemy_asyncpg_postgresql_connection_str": "" //Optional and only require to override the default database name - postgresql connection string
}
"a4d": {
"enabled": true, //Set to "false" to disable
"sqlalchemy_asyncpg_postgresql_connection_str": "" //Optional and only require to override the default database name - postgresql connection string
}
运行 uipathctl 安装程序
要完成更新,请运行以下命令:
uipathctl manifest apply input.json --versions versions.json
uipathctl manifest apply input.json --versions versions.json
更新 Redis 凭据
为 Redis 提供新凭据
使用新密码和/或主机名更新 input.json 文件中的以下部分:
"fabric": {
"redis": {
"hostname": "new_hostname",
"password": "new_password",
"port": 6380,
"tls": true
}
"fabric": {
"redis": {
"hostname": "new_hostname",
"password": "new_password",
"port": 6380,
"tls": true
}
运行 uipathctl 安装程序
要完成 Redis 凭据的更新,请运行以下命令:
uipathctl manifest apply input.json --only redis --versions versions.json
uipathctl manifest apply input.json --only redis --versions versions.json
您可以将空运行标志与 uipathctl 一起使用,以打印命令的结果,而无需应用它。
更新对象存储凭据
使用新的 access_key、secret_key 或 acount_key 和 account_name 更新 input.json 文件中的以下部分:
"external_object_storage": {
"enabled": false, // <true/false>
"create_bucket": true, // <true/false>
"storage_type": "s3", // <s3,azure,aws>
"fqdn": "", // <needed in case of aws non instance profile>
"port": 443, // <needed in case of aws non instance profile>
"region": "",
"access_key": "", // <needed in case of aws non instance profile>
"secret_key": "", // <needed in case of aws non instance profile>
"use_managed_identity": false, // <true/false>
"bucket_name_prefix": "",
"bucket_name_suffix": "",
"account_key": "", // <needed only when using non managed identity>
"account_name": "",
"azure_fqdn_suffix": "core.windows.net",
"client_id": "" // <optional field in case of managed identity>
},
"external_object_storage": {
"enabled": false, // <true/false>
"create_bucket": true, // <true/false>
"storage_type": "s3", // <s3,azure,aws>
"fqdn": "", // <needed in case of aws non instance profile>
"port": 443, // <needed in case of aws non instance profile>
"region": "",
"access_key": "", // <needed in case of aws non instance profile>
"secret_key": "", // <needed in case of aws non instance profile>
"use_managed_identity": false, // <true/false>
"bucket_name_prefix": "",
"bucket_name_suffix": "",
"account_key": "", // <needed only when using non managed identity>
"account_name": "",
"azure_fqdn_suffix": "core.windows.net",
"client_id": "" // <optional field in case of managed identity>
},
运行 uipathctl 安装程序
要完成对象存储凭据的更新,请运行以下命令:
uipathctl manifest apply input.json --versions versions.json
uipathctl manifest apply input.json --versions versions.json
您可以将空运行标志与 uipathctl 一起使用,以打印命令的结果,而无需应用它。
更新注册表凭据
当使用的容器注册表要求身份验证才能拉取映像时,Pod 必须使用名为 uipathpullsecret 的密码。
要更新uipathpullsecret ,请执行以下步骤:
- 更新
input.json文件的注册表部分:"registries": { "docker": { "url": "yourContainerRegistryUrl", "username": "username", "password": "newpassword" }, "helm": { "url": "yourContainerRegistryUrl", "username": "username", "password": "newpassword" } }"registries": { "docker": { "url": "yourContainerRegistryUrl", "username": "username", "password": "newpassword" }, "helm": { "url": "yourContainerRegistryUrl", "username": "username", "password": "newpassword" } } - 删除现有的
uipathpullsecret:oc delete secret uipathpullsecret -n <uipath>oc delete secret uipathpullsecret -n <uipath> - 重新运行安装命令:
uipathctl manifest apply input.json --versions versions.jsonuipathctl manifest apply input.json --versions versions.json