Sharing user authorizations ( GEODI → APP)
If your web application is using Geodi Feed API - Feed Method (APP → GEODI ) or Geodi Feed API - Integration with Application Services ( GEODI → APP) then you can perform this service to share authority / role information.
Definition | It is an optional service, not mandatory. If permission definitions provided for FeedApi are LDAP group/user Sid values, it is not required to implement them. Requests are only made for the addresses defined under GEODI / Settings / RoleProvider. Only a system administrator who can access this address can add this definition. You can find sample contents in this folder. If you are using a custom authorization for FeedApi, ask the system administrator who provided you with the GEODI Token the address of your Role / Authorization service and identify it here. If a .net soap api that takes same parameters and returns same object as an output is implemented, then |
|---|---|
Request | [ServiceURL]?m=GetRoles&user={username} {user} or {username} parameters can be used in ServiceURL. Even if the {user}, {username} parameters are not used, the request-user and request-username information is passed in the HTTP Header content.
|
HttpMethod | GET |
Expected Errors | 401 Unauthorized access / Access denied 403 Forbidden 511 Network Authentication Required |
Example GEODI settings file | {
DisplayName:"Sample Role Provider",
__type: "Factory.ActionFactory:ServerBasedRoleProvider",
ServiceURL: "http(s)://myhost/GetRoleService.ashx?user={user}&username={username}",
GEODIRequestHeader:"GEODI_Request",
ActionTargets: "*"
} |
Expected Result | {
Roles: []
}
Rol1,Rol2,group:GeodiGroupName/ID,....or rules can also be transmitted for GEODI 6.1.0.21248 or above. {
Roles: [],
OnlyDenyCheck:[],
Conditions:[],
Groups:[]
}
|
Examples | //Request : [ServiceURL]?m=GetRoles&user=ldap:domain\user.name
{
Roles: [ 'S-151...','Administrator','Document1']
}
//Request : [ServiceURL]?m=GetRoles&user=ldap:domain\user.name
S-151...,Administrator,Document1
rule example for GEODI 6.1.0.21248 and above //Request : [ServiceURL]?m=GetRoles&user=ldap:domain\user.name
{
Roles: [ 'AllPublic'],
OnlyDenyCheck : [ 'CantSeeIfSecret']
Conditions: [ '(Rol1,Rol2) and (Cat1,Cat2) and -(T1)'],
}
//This user
//sees documents that have AllPublic in thier Permit Value. Can't see documents that have Deny AllPublic in thier Permit Value. A condition definition can not change this result.
// Can't see documents that have CantSeeIfSecret in thier Deny definition. A condition definition can not change this result.
//This user can view documents that contain Rol1 or Rol2 , but also include Cat1 or Cat2 at the Permit value and do not contain the T1 role.
//// Caution: it is recommended to use at least 1 unused group. GEODI evaluates all roles together. -(T1) in this case, includes roles from another application
|
Example Application |