Como faço pra validar permissões, exemplo usuário do tipo administrador não ter acesso a algumas janelas

Tela que cadastra os usuários e ja salva o tipo permissão de cada um no banco

public class telacadastrousuario extends javax.swing.JInternalFrame {

Usuario usu = new Usuario();

private List listausuario = new ArrayList();
public telacadastrousuario() {
initComponents();

    validatela("inicio");
    montatabela();
}

private void limpaCampos() {

    //Limpa os campos do formulário
    cnomefuncionario.setText("");
    csenhalogin.setText("");
    clogin.setText("");
    cconfirmasenhalogin.setText("");

}

private Boolean validaCampos() {
String mensagem = “”;

    Boolean retorno = true;
    if (cnomefuncionario.getText().equals("")) {
        mensagem = mensagem + "O campo nome é obrigatório!\n";
        retorno = false;
 
    }
    if (csenhalogin.getText().equals("")) {
        mensagem = mensagem + "O campo senha é obrigatório!\n";
        retorno = false;
    }
    if (clogin.getText().equals("")) {
        mensagem = mensagem + "O campo login é obrigatório!\n";
        retorno = false;
    }
    if (cconfirmasenhalogin.getText().equals("")) {
        mensagem = mensagem + "O campo confirmar senha é obrigatório!\n";
        retorno = false;
    }
    
 
    if (retorno == false) {
        JOptionPane.showMessageDialog(null, mensagem);
    }
    return retorno;
}
private void validatela(String acao){

if (acao.equals(“inicio”)){

    //BOTÃOES
    btadicionar.setEnabled(true);
    btsalvar.setEnabled(false);
    btsair.setEnabled(true);
    bteditar.setEnabled(false);
    btcancelar.setEnabled(false);
    btexcluir.setEnabled(false);
    
    //CAMPOS
 
    cnomefuncionario.setEnabled(false);
    cPermissao.setEnabled(false);
    clogin.setEnabled(false);
    csenhalogin.setEnabled(false);
    cconfirmasenhalogin.setEnabled(false);
   
     
}if (acao.equals("novo")){
    
    //BOTÃOES
    btadicionar.setEnabled(false);
    btsalvar.setEnabled(true);
    btsair.setEnabled(true);
    bteditar.setEnabled(true);
    btcancelar.setEnabled(true);
    
    //CAMPOS
   
    cnomefuncionario.setEnabled(true);
    cPermissao.setEnabled(!false);
    clogin.setEnabled(true);
    csenhalogin.setEnabled(true);
    cconfirmasenhalogin.setEnabled(true);
  

}

else if (acao.equals("editar")){
    
    //BOTÃOES
    btadicionar.setEnabled(false);
    btexcluir.setEnabled(false);
    bteditar.setEnabled(false);
    btsalvar.setEnabled(true);
    btcancelar.setEnabled(true);
    btsair.setEnabled(true);
    //CAMPOS
     cnomefuncionario.setEnabled(!false);
    clogin.setEnabled(!false);
    csenhalogin.setEnabled(!false);
    cconfirmasenhalogin.setEnabled(!false);       
 cPermissao.setEnabled(!false);

}
else if(acao.equals(“selecionar”)){
btadicionar.setEnabled(false);
btexcluir.setEnabled(true);
bteditar.setEnabled(true);
btsair.setEnabled(true);
btcancelar.setEnabled(false);
btsalvar.setEnabled(false);

    cnomefuncionario.setEnabled(false);
    cconfirmasenhalogin.setEnabled(false);
    cnomefuncionario.setEnabled(false);
    csenhalogin.setEnabled(false);
}

}
public void montatabela(){
listausuario = HibernateUtil.getSession()
.createCriteria(Usuario.class).list();
DefaultTableModel Colunas = new DefaultTableModel();
Colunas.addColumn(“Nome do Usuário”);
Colunas.addColumn(“Usuário”);
Colunas.addColumn(“Senha”);
Colunas.addColumn(“Confirmação da Senha”);
Colunas.addColumn(“Permissão”);
for(Usuario u: listausuario ){
Colunas.addRow(new Object[]{u.getNomefuncionario(),u.getLogin(),u.getSenhalogin()
,u.getConfirmasenhalogin(), u.getPermissao()});
}
jTableUsuario.setModel(Colunas);
}
private void btadicionarActionPerformed(java.awt.event.ActionEvent evt) {
validatela(“novo”);
}

private void btsalvarActionPerformed(java.awt.event.ActionEvent evt) {                                         
   if (validaCampos()){ 
       if(csenhalogin.getText().equals(cconfirmasenhalogin.getText())){
           
       usu.setNomefuncionario(cnomefuncionario.getText());
       usu.setLogin(clogin.getText());
       usu.setSenhalogin(MD5.md5(csenhalogin.getText()));
       usu.setConfirmasenhalogin(MD5.md5(cconfirmasenhalogin.getText()));
       usu.setPermissao((String)cPermissao.getSelectedItem());
       HibernateUtil.beginTransaction();
      HibernateUtil.getSession().merge(usu);
      HibernateUtil.commitTransaction();
      HibernateUtil.closeSession();
      
      montatabela();
      limpaCampos();
       validatela("inicio");
       
       }else {
           JOptionPane.showMessageDialog(null,"As senhas não correspondem");
       }
    }
}                                        

private void btcancelarActionPerformed(java.awt.event.ActionEvent evt) {                                           
    // TODO add your handling code here:
    limpaCampos();
    validatela("inicio");
}                                          

private void btsairActionPerformed(java.awt.event.ActionEvent evt) {                                       

this.dispose(); // TODO add your handling code here:
}

private void jTableUsuarioMouseClicked(java.awt.event.MouseEvent evt) {                                           
    usu = listausuario.get(jTableUsuario.getSelectedRow());
    cnomefuncionario.setText(usu.getNomefuncionario());
    clogin.setText(usu.getLogin());
    csenhalogin.setText(usu.getSenhalogin());
    cconfirmasenhalogin.setText(usu.getConfirmasenhalogin());
    validatela("selecionar");
}                                          

private void bteditarActionPerformed(java.awt.event.ActionEvent evt) {                                         
    validatela("editar");

}                                        

private void btexcluirActionPerformed(java.awt.event.ActionEvent evt) {                                          
        Object [] opcoes={"Sim","Não"};
        int x = JOptionPane.showOptionDialog(null,"Tem certeza que deseja excluir o "
                + "usuário","Atenção",JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE,null,opcoes,opcoes[0]);
        
        if(x==JOptionPane.YES_OPTION){
        
            HibernateUtil.beginTransaction();
            HibernateUtil.getSession().delete(usu);
            HibernateUtil.commitTransaction();
            HibernateUtil.closeSession();
     }
        montatabela();
        limpaCampos();
        validatela("inicio");
}                           

TELA PRINCIPAL

public class TelaPrincipal extends javax.swing.JFrame {
Usuario usu = new Usuario();
TelaLogin login = new TelaLogin();

public TelaPrincipal() {
    setExtendedState(JFrame.MAXIMIZED_BOTH);
    initComponents();
     HibernateUtil.beginTransaction();
        HibernateUtil.getSession();
        HibernateUtil.commitTransaction();
        HibernateUtil.closeSession();
        
}

private void btClienteActionPerformed(java.awt.event.ActionEvent evt) {
telacadastrocliente objeto=new telacadastrocliente();
jTelaInterna.add(objeto);
objeto.setVisible(true);
}

private void btFornecedorActionPerformed(java.awt.event.ActionEvent evt) {                                             
    telacadastrofornecedor obj=new telacadastrofornecedor(this);
    jTelaInterna.add(obj);
    obj.setVisible(true);
}                                            

private void btUsuarioActionPerformed(java.awt.event.ActionEvent evt) {
telacadastrousuario obj2=new telacadastrousuario();
jTelaInterna.add(obj2);
obj2.setVisible(true);
}
private void btsairMouseClicked(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
this.dispose();
TelaLogin chamar= new TelaLogin();
chamar.setVisible(true);
}

private void btcproducaoMouseClicked(java.awt.event.MouseEvent evt) {                                         
    
}                                        

private void btmateriaprimaActionPerformed(java.awt.event.ActionEvent evt) {                                               
    telaentradamateriaprima obj8= new telaentradamateriaprima();
    jTelaInterna.add(obj8);
    obj8.setVisible(true);
            
}                                              

private void btservicoActionPerformed(java.awt.event.ActionEvent evt) {                                          
  TelaVulcanizacao obj = new TelaVulcanizacao();
  jTelaInterna.add(obj);
  obj.setVisible(true);
}                                         

private void btsobreMouseClicked(java.awt.event.MouseEvent evt) {                                     
       telasobre obj10= new telasobre();
    jTelaInterna.add(obj10);
    obj10.setVisible(true);
}                                    

private void btvendedorActionPerformed(java.awt.event.ActionEvent evt) {                                           
   telacadastrovendedor obj11=new telacadastrovendedor();
   jTelaInterna.add(obj11);
   obj11.setVisible(true);
}                                          

private void btcadastroempresaActionPerformed(java.awt.event.ActionEvent evt) {                                                  
    telacadastroproduto obj12= new telacadastroproduto();
    jTelaInterna.add(obj12);
    obj12.setVisible(true);
}