Domino XPages:将 PKCS12-SSL-Certificate 从 ID-Vault 导入 ID
Domino XPages: Import PKCS12-SSL-Certificate into ID from ID-Vault
IBM 在 Xpages 中引入了 dominoIDVaultBean。是否可以从 ID Vault 获取 ID,添加 PKCS12-SSL-Certificate 并使用纯 XPages 再次将 ID 上传到 Vault 而没有 API?
使用 API 这可以通过以下方式实现:
- SECidfGet
- PKCS12_ImportFileToIDFile
- SECidfPut
实际上,如果您使用 Domino 9.0.1 FP8,那将是一件非常容易的事情。我使用新引入的 IDVault class 以及通过 JNI 调用 PKCS12_ImportFileToIDFile C API 解决了这个问题。
所以基本上您的代码(在由 REST 调用启动的 bean 中)可能如下所示:
Session session = DominoUtils.getCurrentSession();
IDVault idvault = session.getIDVault();
//****** DOWNLOAD ID *****************
idvault.getUserIDFile(this.getIdFilePath(), this.getUsername(), this.getIdPassword(), VAULT_SERVER);
//****** IMPORT P12 ******************
Native.setProtected(true);
nnotes lib = (nnotes) Native.loadLibrary(NOTES_LIB, nnotes.class);
short errorint = lib.PKCS12_ImportFileToIDFile(this.getP12Path(), this.getP12Pin(), this.getIdFilePath(), this.getIdPassword(), 0, 0, 0);
//****** SYNC ID BACK TO VAULT *******
idvault.syncUserIDFile(this.getIdFilePath(), this.getUsername(),this.getIdPassword(), VAULT_SERVER);
通过 java 调用 C API 这是一个很好的 reference 开始。
IBM 在 Xpages 中引入了 dominoIDVaultBean。是否可以从 ID Vault 获取 ID,添加 PKCS12-SSL-Certificate 并使用纯 XPages 再次将 ID 上传到 Vault 而没有 API?
使用 API 这可以通过以下方式实现:
- SECidfGet
- PKCS12_ImportFileToIDFile
- SECidfPut
实际上,如果您使用 Domino 9.0.1 FP8,那将是一件非常容易的事情。我使用新引入的 IDVault class 以及通过 JNI 调用 PKCS12_ImportFileToIDFile C API 解决了这个问题。
所以基本上您的代码(在由 REST 调用启动的 bean 中)可能如下所示:
Session session = DominoUtils.getCurrentSession();
IDVault idvault = session.getIDVault();
//****** DOWNLOAD ID *****************
idvault.getUserIDFile(this.getIdFilePath(), this.getUsername(), this.getIdPassword(), VAULT_SERVER);
//****** IMPORT P12 ******************
Native.setProtected(true);
nnotes lib = (nnotes) Native.loadLibrary(NOTES_LIB, nnotes.class);
short errorint = lib.PKCS12_ImportFileToIDFile(this.getP12Path(), this.getP12Pin(), this.getIdFilePath(), this.getIdPassword(), 0, 0, 0);
//****** SYNC ID BACK TO VAULT *******
idvault.syncUserIDFile(this.getIdFilePath(), this.getUsername(),this.getIdPassword(), VAULT_SERVER);
通过 java 调用 C API 这是一个很好的 reference 开始。