Auth samples
Basics
Section titled “Basics”The class com.openkm.sdk4csharp.bean.Permission contains permission values ( READ, WRITE, etc. ). You should use it in combination with methods that are changing or getting security grants.
On almost methods, you’ll see parameter named “nodeId”. The value of this parameter can be some valid node UUID ( folder, document, mail, record ) or node path.
Suggested code sample
Section titled “Suggested code sample”First, you must create the webservice object:
OKMWebservices ws = OKMWebservicesFactory.newInstance(host);Then should login using the method “login”. You can access the “login” method from webservice object “ws” as is shown below:
ws.login(user, password);At this point you can use all the Auth methods from “auth” class as is shown below:
Dictionary<String, int> grants = ws.auth.getGrantedRoles("373bcdd0-c082-4e7b-addd-e10ef813946e");Methods
Section titled “Methods”Description:
| Method | Return values | Description |
|---|---|---|
| login(String user, String password) | String | Return the login authorized token. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.impl;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}Description:
| Method | Return values | Description |
|---|---|---|
| String login(String user, String password, int expiration, bool restrictIp) | String | Login process return authentication token. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.impl;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);int days = 7;bool restrictIp = true;try{System.Console.WriteLine("Token: " + ws.login(user, password, days, restrictIp));}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}getGrantedRoles
Section titled “getGrantedRoles”Description:
| Method | Return values | Description |
|---|---|---|
| getGrantedRoles(String nodeId) | Dictionary<String, int> | Return the granted roles of a node. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.impl;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);try{ws.login(user, password);Dictionary<String, int> grants = ws.auth.getGrantedRoles("14530e37-ac51-4a26-8049-0146a5916dec");foreach (String role in grants.Keys){System.Console.WriteLine("role ->" + role);}}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}getGrantedUsers
Section titled “getGrantedUsers”Description:
| Method | Return values | Description |
|---|---|---|
| getGrantedUsers(String nodeId) | Dictionary<String, int> | Returns the granted users of a node. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.impl;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);Dictionary<String, int> grants = ws.auth.getGrantedUsers("14530e37-ac51-4a26-8049-0146a5916dec");foreach (KeyValuePair<string, int> kvp in grants){Console.WriteLine("{0} -> {1}", kvp.Key, kvp.Value);}}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}getRoles
Section titled “getRoles”Description:
| Method | Return values | Description |
|---|---|---|
| getRoles(boolean showAll) | List |
Returns the list of all the roles. |
When showAll variable is set to true return all the roles - enabled and disabled - otherwise only returns the enabled.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);foreach (String role in ws.auth.getRoles(false)){System.Console.WriteLine(role);}} catch (Exception e) {System.Console.WriteLine(e.ToString());}}}}getRolesByUser
Section titled “getRolesByUser”Description:
| Method | Return values | Description |
|---|---|---|
| getRolesByUser(String user) | List |
Returns the list of all the roles assigned to a user. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);foreach(String role in ws.auth.getRolesByUser("okmAdmin")){System.Console.WriteLine(role);}} catch (Exception e) {System.Console.WriteLine(e.ToString());}}}}getUser
Section titled “getUser”Description:
| Method | Return values | Description |
|---|---|---|
| getUser(String userId) | CommonUser | Returns a user. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);CommonUser user = ws.auth.getUser("okmAdmin");System.Console.WriteLine(user.toString());}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}getUsers
Section titled “getUsers”Description:
| Method | Return values | Description |
|---|---|---|
| getUsers(boolean showAll) | List |
Returns the list of all the users. |
When showAll variable is set to true return all the users - enabled and disabled - otherwise only returns the enabled.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);foreach (CommonUser user in ws.auth.getUsers(false)){System.Console.WriteLine(user.toString());}}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}getUsersByRole
Section titled “getUsersByRole”Description:
| Method | Return values | Description |
|---|---|---|
| getUsersByRole(String role) | List |
Returns the list of all the users who have assigned a role. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);foreach (CommonUser user in ws.auth.getUsersByRole("ROLE_ADMIN")){System.Console.WriteLine(user.toString());}}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}revokeRole
Section titled “revokeRole”Description:
| Method | Return values | Description |
|---|---|---|
| revokeRole(String nodeId, String role, int permissions, boolean recursive) | void | Removes a role grant on a node. |
The parameter recursive only has a sense when the nodeId is a folder or record node.
When the parameter recursive is true, the change will be applied to the node and descendants.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8180/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);// Remove ROLE_USER write grants at the node but not descendantsws.auth.revokeRole("14530e37-ac51-4a26-8049-0146a5916dec", "ROLE_USER", Permission.ALL_GRANTS, false);
// Remove all ROLE_ADMIN grants to the node and descendantsws.auth.revokeRole("14530e37-ac51-4a26-8049-0146a5916dec", "ROLE_ADMIN", Permission.ALL_GRANTS, true);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}revokeUser
Section titled “revokeUser”Description:
| Method | Return values | Description |
|---|---|---|
| revokeUser(String nodeId, String user, int permissions, boolean recursive) | void | Removes a user grant on a node. |
The parameter recursive only makes any sense when the nodeId is a folder or record node.
When the parameter recursive is true, the change will be applied to the node and descendants.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);// Remove john write grants at the node but not descendantsws.auth.revokeUser("14530e37-ac51-4a26-8049-0146a5916dec", "john", Permission.ALL_GRANTS, false);
// Remove all okmAdmin grants at the node and descendantsws.auth.revokeUser("14530e37-ac51-4a26-8049-0146a5916dec", "okmAdmin", Permission.ALL_GRANTS, true);} catch (Exception e) {System.Console.WriteLine(e.ToString());}}}}grantRole
Section titled “grantRole”Description:
| Method | Return values | Description |
|---|---|---|
| grantRole(String nodeId, String role, int permissions, boolean recursive) | void | Add role grant on a node. |
The parameter recursive only makes any sense when the nodeId is a folder or record node.
When the parameter recursive is true, the change will be applied to the node and descendants.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);// Add ROLE_USER write grants at the node but not descendantsws.auth.grantRole("14530e37-ac51-4a26-8049-0146a5916dec", "ROLE_USER", Permission.ALL_GRANTS, false);
// Add all ROLE_ADMIN grants to the node and descendantsws.auth.grantRole("14530e37-ac51-4a26-8049-0146a5916dec", "ROLE_ADMIN", Permission.ALL_GRANTS, true);} catch (Exception e) {System.Console.WriteLine(e.ToString());}}}}grantUser
Section titled “grantUser”Description:
| Method | Return values | Description |
|---|---|---|
| grantUser(String nodeId, String user, int permissions, boolean recursive) | void | Adds a user grant on a node. |
The parameter recursive only makes any sense when the nodeId is a folder or record node.
When the parameter recursive is true, the change will be applied to the node and descendants.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);// Add john write grants at the node but not descendantsws.auth.grantUser("14530e37-ac51-4a26-8049-0146a5916dec", "john", Permission.ALL_GRANTS, false);
// Add all okmAdmin grants at the node and descendantsws.auth.grantUser("14530e37-ac51-4a26-8049-0146a5916dec", "okmAdmin", Permission.ALL_GRANTS, true);} catch (Exception e) {System.Console.WriteLine(e.ToString());}}}}getProfiles
Section titled “getProfiles”Description:
| Method | Return values | Description |
|---|---|---|
| getProfiles(boolean filterByActive) | List |
Return the list of all profiles. |
When the parameter filterByActive is enabled, the method will return only the active profiles, otherwise will return all available profiles.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);foreach (Profile profile in ws.auth.getProfiles(true)){System.Console.WriteLine(profile.toString());}} catch (Exception e) {System.Console.WriteLine(e.ToString());}}}}getUserProfile
Section titled “getUserProfile”Description:
| Method | Return values | Description |
|---|---|---|
| getUserProfile(String userId) | Profile | Returns the profile assigned to a user. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);System.Console.WriteLine(ws.auth.getUserProfile("okmAdmin").toString());} catch (Exception e) {System.Console.WriteLine(e.ToString());}}}}setUserProfile
Section titled “setUserProfile”Description:
| Method | Return values | Description |
|---|---|---|
| setUserProfile(String userId, long profileId) | void | Change the assigned profile to a user. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);// Set the profile named "default" to the userforeach (Profile profile in ws.auth.getProfiles(true)){if (profile.name.Equals("Default")){ws.setUserProfile("okmAdmin", profile.id);}}} catch (Exception e) {System.Console.WriteLine(e.ToString());}}}}createUser
Section titled “createUser”Description:
| Method | Return values | Description |
|---|---|---|
| createUser(String user, String password, String email, String name, Boolean active) | void | Create a new user. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);ws.auth.createUser("test", "password.2016", "some@mail.com", "User Name", true);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}deleteUser
Section titled “deleteUser”Description:
| Method | Return values | Description |
|---|---|---|
| deleteUser(String user) | void | Delete a user. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);ws.auth.deleteUser("test");}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}updateUser
Section titled “updateUser ”Description:
| Method | Return values | Description |
|---|---|---|
| updateUser(String user, String password, String email, String name, Boolean active) | void | Update a user. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);ws.auth.updateUser("test", "newpassword", "some@mail.com", "Test", false);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}createRole
Section titled “createRole”Description:
| Method | Return values | Description |
|---|---|---|
| createRole(String role, boolean active) | void | Create a new role. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);ws.auth.createRole("ROLE_TEST", true);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}deleteRole
Section titled “deleteRole”Description:
| Method | Return values | Description |
|---|---|---|
| deleteRole(String role) | void | Delete a role. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);ws.auth.deleteRole("ROLE_TEST");}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}updateRole
Section titled “updateRole”Description:
| Method | Return values | Description |
|---|---|---|
| updateRole(String role, boolean active) | void | Update a role. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);ws.auth.updateRole("ROLE_TEST", true);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}assingRole
Section titled “assingRole”Description:
| Method | Return values | Description |
|---|---|---|
| assingRole(String user, String role) | void | Assign a role to a user. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);ws.auth.assignRole("test", "ROLE_USER");}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}removeRole
Section titled “removeRole”Description:
| Method | Return values | Description |
|---|---|---|
| removeRole(String user, String role) | void | Remove a role from a user. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);ws.auth.removeRole("test", "ROLE_USER");}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}changeSecurity
Section titled “changeSecurity”Description:
| Method | Return values | Description |
|---|---|---|
| changeSecurity(ChangeSecurity changeSecurity) | void | Change the security of a node. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);Folder fld = ws.folder.createFolder("a978f8e6-aa87-4f0f-b7bc-6f44cb090fdf", "Folder1");ChangeSecurity cs = new ChangeSecurity();List<GrantedRole> grList = new List<GrantedRole>();GrantedRole gr = new GrantedRole();gr.role = "ROLE_TEST";gr.permissions = Permission.READ | Permission.WRITE;grList.Add(gr);cs.grantedRolesList = grList;ws.auth.changeSecurity(fld.uuid, cs);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}overwriteSecurity
Section titled “overwriteSecurity”Description:
| Method | Return values | Description |
|---|---|---|
| overwriteSecurity(String uuid, ChangeSecurity changeSecurity) | void | Overwrite the security of a node. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);GrantedUser gu = new GrantedUser();gu.user = pherrera;gu.permissions = Permission.READ | Permission.WRITE;
List<GrantedUser> guList = new List<GrantedUser>();guList.Add(gu);
GrantedRole gr = new GrantedRole();gr.role = "ROLE_TEST";gr.permissions = Permission.READ | Permission.WRITE;
List<GrantedRole> grList = new List<GrantedRole>();grList.Add(gr);
ChangeSecurity changeSecurity = new ChangeSecurity();changeSecurity.recursive = false;changeSecurity.grantedUsersList = guList;changeSecurity.grantedRolesList = grList;
ws.auth.overwriteSecurity("4f873d10-654e-4d99-a94f-15466e30a0f6", changeSecurity);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}logout
Section titled “logout”Description:
| Method | Return values | Description |
|---|---|---|
| logout() | void | Execute the logout method in OpenKM side. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);ws.logout();}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}getGrantedUsersAndRoles
Section titled “getGrantedUsersAndRoles”Description:
| Method | Return values | Description |
|---|---|---|
| getGrantedUsersAndRoles(String uuid) | GrantedUsersAndRolesItem | Return the granted users and roles of a node. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);GrantedUsersAndRolesItem grants = ws.auth.getGrantedUsersAndRoles("15e35aef-f1bb-451e-ac86-3b0f7c88ca9f");foreach (KeyValuePair<string, int> user in grants.grantedUsers){System.Console.WriteLine(user.Key + "->" + user.Value);}foreach (KeyValuePair<string, int> role in grants.grantedRoles){System.Console.WriteLine(role.Key + "->" + role.Value);}}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}setUserPermissions
Section titled “setUserPermissions”Description:
| Method | Return values | Description |
|---|---|---|
| setUserPermissions(String uuid, String userId, int permissions, bool recursive) | void | Update user permissions on a node. |
The parameter recursive only has sense when the uuid is a folder or record node.
When parameter recursive is true, the change will be applied to the node and descendants.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);// Set user permissionsws.auth.setUserPermissions("22c1d190-f798-489d-b420-2008cb38705b", "user1", Permission.READ + Permission.WRITE, false);
// Update permissions of okmAdmin at the node and descendantsws.auth.setUserPermissions("22c1d190-f798-489d-b420-2008cb38705b", "okmAdmin", Permission.ALL_GRANTS, true);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}setRolePermissions
Section titled “setRolePermissions”Description:
| Method | Return values | Description |
|---|---|---|
| setRolePermissions(String uuid, String roleId, int permissions, bool recursive) | void | Update role permissions on a node. |
The parameter recursive only has sense when the uuid is a folder or record node.
When parameter recursive is true, the change will be applied to the node and descendants.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);// Set role permissionsws.auth.setRolePermissions("22c1d190-f798-489d-b420-2008cb38705b", "ROLE_USER", Permission.READ + Permission.WRITE, false);
// Update permissions of ROLE_ADMIN at the node and descendantsws.auth.setRolePermissions("22c1d190-f798-489d-b420-2008cb38705b", "ROLE_ADMIN", Permission.ALL_GRANTS, true);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}getUserTenants
Section titled “getUserTenants”Description:
| Method | Return values | Description |
|---|---|---|
| getUserTenants() | List |
Return the list of all tenants. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);List<Tenant> tenants = ws.auth.getUserTenants();foreach (Tenant tenant in tenants){System.Console.WriteLine(tenant.toString());}}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}setUserTenant
Section titled “setUserTenant”Description:
| Method | Return values | Description |
|---|---|---|
| setUserTenant(long tenantId) | void | Change the assigned tenant to a user. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);long tenantId = 1; // Valid tenant idws.auth.setUserTenant(tenantId);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}isAdmin
Section titled “isAdmin”Description:
| Method | Return values | Description |
|---|---|---|
| isAdmin() | bool | Check if the authenticated user is a member of administrators. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);bool isAdmin = ws.auth.isAdmin();}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}getSessionId
Section titled “getSessionId”Description:
| Method | Return values | Description |
|---|---|---|
| getSessionId() | String | Get http session id. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;using com.openkm.sdk4csharp.impl;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);String id = ws.auth.getSessionId();}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}hasSecurityRecursive
Section titled “hasSecurityRecursive”Description:
| Method | Return values | Description |
|---|---|---|
| hasSecurityRecursive() | bool | Check if the user has grants to propagate the security recursively. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;using com.openkm.sdk4csharp.impl;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);bool hasSecurityRecursive = ws.auth.hasSecurityRecursive();}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}hasTaskManagerAdmin
Section titled “hasTaskManagerAdmin”Description:
| Method | Return values | Description |
|---|---|---|
| hasTaskManagerAdmin() | bool | Check if the user is a member of the role task manager admin. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;using com.openkm.sdk4csharp.impl;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);bool hasSecurityRecursive = ws.auth.hasTaskManagerAdmin();}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}isLoginLowercase
Section titled “isLoginLowercase”Description:
| Method | Return values | Description |
|---|---|---|
| isLoginLowercase() | bool | Return true when user is must be set in lowercase in login. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;using com.openkm.sdk4csharp.impl;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);System.Console.WriteLine(ws.auth.isLoginLowercase().ToString());}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}isPasswordExpired
Section titled “isPasswordExpired”Description:
| Method | Return values | Description |
|---|---|---|
| isPasswordExpired() | Boolean | True when the password of the user has expired. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;using com.openkm.sdk4csharp.impl;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);System.Console.WriteLine("Password expired= " + ws.auth.isPasswordExpired().ToString());}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}getUserToken
Section titled “getUserToken”Description:
| Method | Return values | Description |
|---|---|---|
| getUserToken(String userId) | String | Return the auth token from a given user. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;using com.openkm.sdk4csharp.impl;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);String userToken = ws.auth.getUserToken("testUser");Console.WriteLine("UserToken: " + userToken);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}