API Java
HSM Dinamo
Todos Estruturas de dados Namespaces Arquivos Funções Variáveis Grupos Páginas
UserNamespacePermission.java

Exemplo de permissões da namespace de objetos de um usuário do HSM.

Veja Nota sobre os exemplos.
package doxy.examples;
import java.util.concurrent.TimeUnit;
import com.dinamonetworks.Dinamo;
import br.com.trueaccess.TacException;
import br.com.trueaccess.TacNDJavaLib;
public class UserNamespacePermission {
static String ip = "127.0.0.1";
static String operatorId = "master";
static String operatorPwd = "12345678";
static String userId = "user01";
static String userPwd = "12345678";
public static void main(String[] args) throws TacException, InterruptedException {
/*
* Cria usuário comum utilizando um usuário operador.
*
* */
Dinamo opUserSession = new Dinamo();
int authMask = 0;
opUserSession.openSession(ip, operatorId, operatorPwd, TacNDJavaLib.DEFAULT_PORT, false, false, true);
opUserSession.createUser(userId, userPwd, authMask);
/*
* Conecta com o usuário criado e dá permissão para o usuário
* operador.
*
* */
Dinamo userSession = new Dinamo();
String strKeyName = "key";
userSession.openSession(ip,
userId,
userPwd,
TacNDJavaLib.DEFAULT_PORT,
false, false, true);
userSession.createKey( strKeyName,
TacNDJavaLib.ALG_3DES_168,
true);
userSession.updateUserObjPermission(operatorId,
true,
true,
true,
true);
/*
* Testa acesso a chave do usuário comum usando o usuário master.
* */
opUserSession.getUserKey(userId+"/"+strKeyName);
/*
* Remove permissões.
* */
userSession.updateUserObjPermission(operatorId,
false,
false,
false,
false);
userSession.closeSession(true);
/*
* Espera para um pouco para a sessão ser fechada completamente.
*/
TimeUnit.SECONDS.sleep(1);
/*
* Remove usuário de teste.
* */
opUserSession.deleteUser(userId);
opUserSession.closeSession();
}
}