AToken.java

Exemplo de Access Tokens com o HSM.

Veja Nota sobre os exemplos.
package doxy.examples;
public class AToken {
public static void main(String[] args) {
try {
//Abre sessão que irá criar o AToken.
Dinamo dnIssueSession = new Dinamo();
dnIssueSession.openSession( "10.0.62.47",
"master",
"12345678",
TacNDJavaLib.DEFAULT_PORT,
false,
false,
true);
//Emite o AToken sem tempo de expiração.
TacAccessToken newAToken = dnIssueSession.issueAToken(TacNDJavaLib.DN_A_TOKEN_INFINITE);
//Lista os ATokens.
TacAccessToken[] atokenList = dnIssueSession.listAToken();
for(int i=0; i<atokenList.length; i++)
{
System.out.println(i + " : " + atokenList[i].getStrUserName());
System.out.println(" Expiration: " + atokenList[i].getExpiration());
System.out.println(" Key: " + new String(atokenList[i].getKey()));
System.out.println(" atoken: " + new String(atokenList[i].getAToken()));
System.out.println(" atoken full: " + new String(atokenList[i].getFullAToken()));
}
//Abre sessão utilizando o AToken.
Dinamo atokenSession = new Dinamo();
atokenSession.openSession( "10.0.62.47",
newAToken,
TacNDJavaLib.DEFAULT_PORT,
false,
false,
true);
//Fecha sessão do AToken.
atokenSession.closeSession();
//Recupera a quantidade total de tokens do HSM.
int totalAtokens = dnIssueSession.getATokenCounter();
System.out.println("Atokens Count: " + totalAtokens);
//Executa o Garbage Collector de Access Tokens do HSM.
dnIssueSession.runATokenGC();
//Utiliza a primeira sessão para revogar o AToken.
dnIssueSession.revokeAToken(newAToken);
//Fecha primeira sessão.
dnIssueSession.closeSession();
} catch (TacException e) {
e.printStackTrace();
}
}
}