java - WebSphere 自定义密码加密

标签 java jakarta-ee encryption websphere

尝试按照这些过程在 WebSphere 中启用密码加密,但我认为我不太明白该怎么做:

1. Plug point for custom password encryption

2. Enabling a plugpoint for custom password encryption

我的问题是:

  1. 我是否需要一个单独的 CustomPasswordEncryption 项目来导出 jar 并将其放入链接 2 第 2 步中所述的 ${WAS_INSTALL_ROOT}/classes 目录中?
  2. 如果是这样,我是否只需将链接 1 处的接口(interface)复制到该项目中并实现它?假设现在我在没有任何实际加密的情况下实现它,即返回通过它的密码而不做任何更改。我现在只是想看看这是如何运作的。
  3. 链接 1,步骤 1,假设我的类名为 CustomPasswordEncryptionImpl,是否应该将此属性设置为属性 com.ibm.wsspi.security.crypto.CustomPasswordEncryptionImpl?
  4. 链接 1,第 1 步,是否将 com.ibm.wsspi.security.crypto.customPasswordEncryptionEnabled 属性设置为 true
  5. 链接 2,步骤 3。我不明白他们想说什么,我需要编辑类路径吗?
  6. 完成所有操作后,我是否需要编辑 security.xml 文件,还是 {xor} 会自动替换为我的新别名?

最佳答案

回答您的问题...

  1. 所有链接 2 第 2 步告诉您的是,您需要将实现的类放入 JAR 文件中,并将其放在正确的位置(在类路径上)。如何打包/管理该文件(是否作为项目)取决于您。

  2. 您无需复制提供的接口(interface),而是在自己的自定义对象中实现该接口(interface)(实现 CustomPasswordEncryption)。它已经是 WebSphere 的一部分。如果您的项目中引用了正确的 JAR 文件,编译器/ide/等将会找到它。

  3. 是的,您设置此 JVM 属性(通过 java -D)以指向接口(interface)的实现。尽管我强烈建议您将实现放在您自己的 java 包中,而不是他们的。所以类似于 com.whatever.CustomPasswordEncryptionImpl。

  4. 我没有尝试过,但看起来这样命名可以避免设置 JVM 属性。所以他们只是将其作为一种选择提供。不过,我仍然认为我更喜欢将它放在我自己的包装空间中。

  5. 您有责任更新这些内容,因为除非您主动更改它们,否则 WebSphere 不会更新它们。

还需要注意一件事...如果您实现的插件失败,WebSphere 将默认使用 XOR。您将在日志中看到一个条目,但在其他地方不会收到任何指示。因此,请务必牢记这一点。

关于java - WebSphere 自定义密码加密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11728907/

相关文章:

java - 为什么 Java 不支持构造函数的类型推断?

java - ClassNotFoundException : org. apache.derby.jdbc.EmbeddedDriver 尝试将 JPA 与 Derby 一起使用时

java - 在 weblogic 中使用外部属性文件

java - 如果我只有解密方法,如何重新创建 AES 加密方法

java - 在 Java 中检测 CapsLock

java - 玩框架Twitter4J库

java - 用于 Web 应用程序设计的各种 Java 框架如何结合在一起

java - 管理 WAR 上的补丁信息

sql-server - 使用 AlwaysOn 集群进行加密

java - PHP、Java、Javascript 之间的 AES 互操作性