Java API
HSM Dinamo
Loading...
Looking for...
No entries found
SetUserCertificate.java

Example of associating and dissociating an X.509 certificate with a user for two-factor authentication.

See Note on examples.
package doxy.examples;
import java.nio.file.Files;
import java.nio.file.Paths;
import com.dinamonetworks.Dinamo;
import br.com.trueaccess.TacException;
import br.com.trueaccess.TacNDJavaLib;
public class SetUserCertificate {
public static void main(String[] args) {
String ip = "127.0.0.1";
String user = "master";
String pwd = "12345678";
// Usuário cuja associação de certificado será gerenciada.
String targetUser = "certuser";
// Caminho para um arquivo de certificado X.509 DER ou PEM.
String certPath = "user_cert.der";
Dinamo api = new Dinamo();
try {
byte[] cert = Files.readAllBytes(Paths.get(certPath));
api.openSession(ip, user, pwd, TacNDJavaLib.DEFAULT_PORT,
TacNDJavaLib.ENCRYPTED_CONN);
// Associa o certificado ao usuário de destino.
api.setUserCertificate(targetUser,
TacNDJavaLib.DN_USER_INFO_CERT_OP_ASSOCIATE, cert);
System.out.println("Certificate associated with user: " + targetUser);
// Desassocia o certificado do usuário.
// Passe null para o certificado ao desassociar.
api.setUserCertificate(targetUser,
TacNDJavaLib.DN_USER_INFO_CERT_OP_UNASSOCIATE, null);
System.out.println("Certificate unassociated from user: " + targetUser);
} catch (TacException e) {
e.printStackTrace();
} catch (Exception e) {
System.err.println("Failed to read certificate file: " + e.getMessage());
} finally {
try { api.closeSession(); } catch (TacException ignore) {}
}
}
}