在数据源中使用认证别名有什么好处?
What are the advantages of using authentication alias in data sources?
的 server.xml
中添加包含 user
和 password
属性的数据源时
示例:
<dataSource jdbcDriverRef="db2-driver" type="javax.sql.DataSource">
<properties.db2.jcc user="MyUser" password="MyPassword"
databaseName="dbName" serverName="localhost" portNumber="50000"/>
</dataSource>
我在日志中收到以下警告:
J2CA8050I: An authentication alias should be used instead of defining a user name
and password on dataSource[default-0].
在 Configuring authentication aliases for the Liberty profile 中查看如何执行此操作,我看到他们将 user
和 password
放在另一个名为 authData
的元素中,如下所示:
<authData id="auth1" user="MyUser" password="MyPassword"/>
我不知道将用户名和密码从 dataSource
元素移动到 authData
元素有什么好处。在这两种情况下,密码都以纯文本形式显示在 server.xml
文件中。
WebSphere Liberty 使用一个适配器来管理它的数据库连接。通过指定身份验证别名,适配器使用的密码将被加密。如果您不使用 auth 别名,则用户 ID 和密码将在不加密的情况下存储在适配器属性上。
此外,别名提供了另一层抽象,因为别名本身就是一种资源。这里的好处是,如果需要更改数据库user/password并且配置了很多数据源,可以独立配置别名,它们都可以指向相同的授权数据。
使用 wlp/bin 目录中的 securityUtility encode
命令对 server.xml 中的密码进行编码。
如果您通过 WebSphere Developer Tools (WDT) 添加身份验证数据,则在设置密码时会提示您对其进行编码 (xor)/加密 (aes)。它将保存在 server.xml
中,例如:
<authData user="user" password="{xor}Lz4sLCgwLTs="></authData>
server.xml
中添加包含 user
和 password
属性的数据源时
示例:
<dataSource jdbcDriverRef="db2-driver" type="javax.sql.DataSource">
<properties.db2.jcc user="MyUser" password="MyPassword"
databaseName="dbName" serverName="localhost" portNumber="50000"/>
</dataSource>
我在日志中收到以下警告:
J2CA8050I: An authentication alias should be used instead of defining a user name
and password on dataSource[default-0].
在 Configuring authentication aliases for the Liberty profile 中查看如何执行此操作,我看到他们将 user
和 password
放在另一个名为 authData
的元素中,如下所示:
<authData id="auth1" user="MyUser" password="MyPassword"/>
我不知道将用户名和密码从 dataSource
元素移动到 authData
元素有什么好处。在这两种情况下,密码都以纯文本形式显示在 server.xml
文件中。
WebSphere Liberty 使用一个适配器来管理它的数据库连接。通过指定身份验证别名,适配器使用的密码将被加密。如果您不使用 auth 别名,则用户 ID 和密码将在不加密的情况下存储在适配器属性上。
此外,别名提供了另一层抽象,因为别名本身就是一种资源。这里的好处是,如果需要更改数据库user/password并且配置了很多数据源,可以独立配置别名,它们都可以指向相同的授权数据。
使用 wlp/bin 目录中的 securityUtility encode
命令对 server.xml 中的密码进行编码。
如果您通过 WebSphere Developer Tools (WDT) 添加身份验证数据,则在设置密码时会提示您对其进行编码 (xor)/加密 (aes)。它将保存在 server.xml
中,例如:
<authData user="user" password="{xor}Lz4sLCgwLTs="></authData>