Saltar al contenido

LDAP JAVA Update Attribute jpegPhoto

ldap_jpegphoto

package com.empresa;

import java.util.Hashtable;

import javax.naming.Context;
import javax.naming.directory.BasicAttribute;
import javax.naming.directory.DirContext;
import javax.naming.directory.InitialDirContext;
import javax.naming.directory.ModificationItem;

public class ActualizarLDAP {
	
	private DirContext dirContext = null;
	ModificationItem[] modItemsOne = new ModificationItem[1];
	
	public ActualizarLDAP() {
		
		try {
			
			String url = "ldap://<IP_SERVER>:389";
			String conntype = "simple";
			String AdminDn = "cn=root";
			String password = "xxx";
			
			Hashtable<String, String> environment = new Hashtable<String, String>();
			Hashtable<String, String> environmentVar = new Hashtable<String, String>();

			environmentVar.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
			environmentVar.put(Context.PROVIDER_URL, url);
			environmentVar.put(Context.SECURITY_AUTHENTICATION, conntype);
			environmentVar.put(Context.SECURITY_PRINCIPAL, AdminDn);
			environmentVar.put(Context.SECURITY_CREDENTIALS, password);

			dirContext = new InitialDirContext(environmentVar);			
			
		} catch (Exception ee) {
			ee.printStackTrace();
		}
	}
	
	public boolean updateJPEGPHOTO(String entryDN, String base64) {
		
		boolean flag = false;
		try {
			modItemsOne[0] = new ModificationItem(DirContext.REPLACE_ATTRIBUTE, new BasicAttribute("jpegPhoto", base64));
			dirContext.modifyAttributes(entryDN, modItemsOne);
			flag = true;
		} catch (Exception exception) {
			exception.printStackTrace();
		}
		return flag;
	}
	
	public static void main(String[] args){
		
		String entryDN = "uid=example,O=EMPRESA";
		String base64 = "data:image/png;base64,iVBORw0KGgoAAAANSUh...";
				
		ActualizarLDAP actualizarLDAP = new ActualizarLDAP();
		
		if (actualizarLDAP.updateJPEGPHOTO(entryDN, base64)) {
			System.out.println("Foto actualizada");
		} else {
			System.out.println("Fallo actualizar foto");
		}
		
	}
	
}

Fuente:

  • http://java2db.com/jndi-ldap-programming/update-or-modify-ldap-entry-using-java-jndi
  • http://www.coderpanda.com/tag/update-attribute-in-ldap-using-java/

Si te ha interesado este artículo y deseas un apoyo o asesoría en algún requerimiento, envíame un mensaje a: (info@juliopari.com) o sino a través de Linkedin: https://www.linkedin.com/in/juliopari/