Auth samples
Aspectos básicos
Sección titulada «Aspectos básicos»La clase com.openkm.sdk4j.bean.Permission contiene los valores de permiso (READ, WRITE, etc.). Debe usarla en combinación con los métodos que cambian u obtienen permisos de seguridad.
En la mayoría de los métodos verá un parámetro llamado “nodeId”. El valor de este parámetro puede ser un UUID de nodo válido (carpeta, documento, correo, expediente) o una ruta (path) de nodo.
Métodos
Sección titulada «Métodos»getGrantedRoles
Sección titulada «getGrantedRoles»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getGrantedRoles(String nodeId) | Map<String, Integer> | Devuelve los roles con permisos concedidos sobre un nodo. |
Ejemplo:
package com.openkm;
import java.util.Map;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); try { Map<String, Integer> grants = ws.getGrantedRoles("/okm:root"); for (String role : grants.keySet()) { System.out.println(role + "->" + grants.get(role)); } } catch (Exception e) { e.printStackTrace(); } }}getGrantedUsers
Sección titulada «getGrantedUsers»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getGrantedUsers(String nodeId) | Map<String, Integer> | Devuelve los usuarios con permisos concedidos sobre un nodo. |
Ejemplo:
package com.openkm;
import java.util.Map;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { Map<String, Integer> grants = ws.getGrantedUsers("/okm:root"); for (String role : grants.keySet()) { System.out.println(role + "->" + grants.get(role)); } } catch (Exception e) { e.printStackTrace(); } }}getMail
Sección titulada «getMail»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getMail(String user) | String | Devuelve el correo de un usuario válido. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { System.out.println(ws.getMail("okmAdmin")); } catch (Exception e) { e.printStackTrace(); } }}getName
Sección titulada «getName»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getName(String user) | String | Devuelve el nombre de un usuario válido. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { System.out.println(ws.getName("okmAdmin")); } catch (Exception e) { e.printStackTrace(); } }}getRoles
Sección titulada «getRoles»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getRoles() | List |
Devuelve la lista de todos los roles. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { for (String role : ws.getRoles()) { System.out.println(role); } } catch (Exception e) { e.printStackTrace(); } }}getRolesByUser
Sección titulada «getRolesByUser»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getRolesByUser(String user) | List |
Devuelve la lista de todos los roles asignados a un usuario. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { for (String role : ws.getRolesByUser("okmAdmin")) { System.out.println(role); } } catch (Exception e) { e.printStackTrace(); } }}getUsers
Sección titulada «getUsers»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getUsers() | List |
Devuelve la lista de todos los usuarios. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { for (String user : ws.getUsers()) { System.out.println(user); } } catch (Exception e) { e.printStackTrace(); } }}getUsersByRole
Sección titulada «getUsersByRole»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getUsersByRole(String role) | List |
Devuelve la lista de todos los usuarios a los que se ha asignado un rol. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { for (String user : ws.getUsersByRole("ROLE_ADMIN")) { System.out.println(user); } } catch (Exception e) { e.printStackTrace(); } }}revokeRole
Sección titulada «revokeRole»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| revokeRole(String nodeId, String role, int permissions, boolean recursive) | void | Elimina el permiso de un rol sobre un nodo. |
El parámetro ‘recursive’ solo aplica cuando el nodeId es una carpeta o un expediente.
Cuando el parámetro recursive es true, el cambio se aplicará al nodo y a sus descendientes.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Permission;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { // Remove ROLE_USER write grants at the node but not descendants ws.revokeRole("/okm:root", "ROLE_USER", Permission.ALL_GRANTS, false);
// Remove all ROLE_ADMIN grants to the node and descendants ws.revokeRole("/okm:root", "ROLE_ADMIN", Permission.ALL_GRANTS, true); } catch (Exception e) { e.printStackTrace(); } }}revokeUser
Sección titulada «revokeUser»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| revokeUser(String nodeId, String user, int permissions, boolean recursive) | void | Elimina el permiso de un usuario sobre un nodo. |
El parámetro ‘recursive’ solo aplica cuando el nodeId es una carpeta o un expediente.
Cuando el parámetro recursive es true, el cambio se aplicará al nodo y a sus descendientes.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Permission;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { // Remove john write grants at the node but not descendants ws.revokeUser("/okm:root", "john", Permission.ALL_GRANTS, false);
// Remove all okmAdmin grants at the node and descendants ws.revokeUser("/okm:root", "okmAdmin", Permission.ALL_GRANTS, true); } catch (Exception e) { e.printStackTrace(); } }}grantRole
Sección titulada «grantRole»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| grantRole(String nodeId, String role, int permissions, boolean recursive) | void | Añade un permiso concedido a un rol sobre un nodo. |
El parámetro ‘recursive’ solo aplica cuando el nodeId es una carpeta o un expediente.
Cuando el parámetro recursive es true, el cambio se aplicará al nodo y a sus descendientes.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Permission;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { // Add ROLE_USER write grants at the node but not descendants ws.grantRole("/okm:root", "ROLE_USER", Permission.ALL_GRANTS, false);
// Add all ROLE_ADMIN grants to the node and descendants ws.grantRole("/okm:root", "ROLE_ADMIN", Permission.ALL_GRANTS, true); } catch (Exception e) { e.printStackTrace(); } }}grantUser
Sección titulada «grantUser»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| grantUser(String nodeId, String user, int permissions, boolean recursive) | void | Añade el permiso de un usuario sobre un nodo. |
El parámetro ‘recursive’ solo aplica cuando el nodeId es una carpeta o un expediente.
Cuando el parámetro recursive es true, el cambio se aplicará al nodo y a sus descendientes.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Permission;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { // Add john write grants at the node but not descendants ws.grantUser("/okm:root", "john", Permission.ALL_GRANTS, false);
// Add all okmAdmin grants at the node and descendants ws.grantUser("/okm:root", "okmAdmin", Permission.ALL_GRANTS, true); } catch (Exception e) { e.printStackTrace(); } }}getProfiles
Sección titulada «getProfiles»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getProfiles(boolean filterByActive) | List |
Devuelve la lista de todos los perfiles. |
Cuando el parámetro filterByActive está habilitado, el método devolverá solo los perfiles activos; en caso contrario devolverá todos los perfiles disponibles.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.ProfileSimple;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { for (ProfileSimple profile : ws.getProfiles(true)) { System.out.println(profile); } } catch (Exception e) { e.printStackTrace(); } }}getUserProfile
Sección titulada «getUserProfile»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getUserProfile(String userId) | ProfileSimple | Devuelve el perfil asignado a un usuario. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { System.out.println(ws.getUserProfile("okmAdmin")); } catch (Exception e) { e.printStackTrace(); } }}setUserProfile
Sección titulada «setUserProfile»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setUserProfile(String userId, long profileId) | void | Cambia el perfil asignado a un usuario. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.ProfileSimple;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { // Set the profile named "default" to the user for (ProfileSimple profile : ws.getProfiles(true)) { if (profile.getName().equals("default")) { ws.setUserProfile("okmAdmin", profile.getId()); } } } catch (Exception e) { e.printStackTrace(); } }}createUser
Sección titulada «createUser»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| createUser(String user, String password, String email, String name, boolean active) | void | Crea un usuario nuevo. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); try { ws.createUser("test", "password.2016", "some@mail.com", "User Name", true); } catch (Exception e) { e.printStackTrace(); } }}deleteUser
Sección titulada «deleteUser»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| deleteUser(String user) | void | Elimina un usuario. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); try { ws.deleteUser("test"); } catch (Exception e) { e.printStackTrace(); } }}updateUser
Sección titulada «updateUser»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| updateUser(String user, String password, String email, String name, boolean active) | void | Actualiza un usuario. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); try { ws.updateUser("test", "newpassword", "some@mail.com", "Test", false); } catch (Exception e) { e.printStackTrace(); } }}createRole
Sección titulada «createRole»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| createRole(String role, boolean active) | void | Crea un rol nuevo. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); try { ws.createRole("ROLE_TEST", true); } catch (Exception e) { e.printStackTrace(); } }}deleteRole
Sección titulada «deleteRole»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| deleteRole(String role) | void | Elimina un rol. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); try { ws.deleteRole("ROLE_TEST"); } catch (Exception e) { e.printStackTrace(); } }}updateRole
Sección titulada «updateRole»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| updateRole(String role, boolean active) | void | Actualiza un rol. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); try { ws.updateRole("ROLE_TEST",true); } catch (Exception e) { e.printStackTrace(); } }}assignRole
Sección titulada «assignRole»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| assignRole(String user, String role) | void | Asigna un rol a un usuario. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); try { ws.assignRole("test", "ROLE_USER"); } catch (Exception e) { e.printStackTrace(); } }}removeRole
Sección titulada «removeRole»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| removeRole(String user, String role) | void | Elimina un rol de un usuario. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); try { ws.removeRole("test", "ROLE_USER"); } catch (Exception e) { e.printStackTrace(); } }}changeSecurity
Sección titulada «changeSecurity»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| changeSecurity(ChangeSecurity changeSecurity) | void | Cambia la seguridad de un nodo. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.ChangeSecurity;import com.openkm.sdk4j.bean.GrantedRole;import com.openkm.sdk4j.bean.GrantedRoleList;import com.openkm.sdk4j.bean.Permission;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); try { ChangeSecurity cs = new ChangeSecurity(); cs.setNodeId("b9736924-bb97-4e2c-8450-138c21e0c9d5"); GrantedRoleList grList = new GrantedRoleList(); GrantedRole gr = new GrantedRole(); gr.setRole("ROLE_TEST"); gr.setPermissions(Permission.READ | Permission.WRITE); grList.getList().add(gr); cs.setGrantedRolesList(grList); ws.changeSecurity(cs); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| login() | void | Simula el proceso de primer inicio de sesión. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test2 { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); try { ws.login(); } catch (Exception e) { e.printStackTrace(); } }}