-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/63237/
-----------------------------------------------------------
Review request for kylin, Dayue Gao, Dong Li, hongbin ma, and Wang Xiaoyu.
Bugs: KYLIN-2960
https://issues.apache.org/jira/browse/KYLIN-2960
Repository: kylin
Description
-------
Currently, the user authentication interface that was provided by kylin to the
third party only supports user and role authentication. However only user and
group have authentication function when we use the LDAP authentication. In fact
the authentication for user and role and the authentication for user and group
have the same functional characteristics between different appplication system.
So we should submit a new feature that it support the authentication for user
and role and the authentication for user and group when the LDAP authentication
was enabled.
We supplied the checkPermission interface to implement the new feature. In the
interface we set user groups information to the userRoles parameter when the
LDAP was enabled, on the contrary we set user roles information to the
userRoles parameter. The interface is as following:
/**
Checks if a user has permission on an entity.
@param user
@param userRoles
@param entityType String constants defined in AclEntityType
@param entityUuid
@param permission
@return true if has permission
*/
abstract public boolean checkPermission(String user, List<String> userRoles, //
String entityType, String entityUuid, Permission permission);
Diffs
-----
server-base/src/main/java/org/apache/kylin/rest/controller/AccessController.java
b3c9458
server-base/src/main/java/org/apache/kylin/rest/security/ExternalAclProviderTest.java
PRE-CREATION
server-base/src/main/java/org/apache/kylin/rest/security/KylinAclPermissionEvaluator.java
b677537
server-base/src/main/java/org/apache/kylin/rest/security/KylinLdapTemplate.java
PRE-CREATION
server-base/src/main/java/org/apache/kylin/rest/security/RoleService.java
PRE-CREATION
server-base/src/main/java/org/apache/kylin/rest/service/KylinRoleService.java
PRE-CREATION
server-base/src/main/java/org/apache/kylin/rest/service/LdapRoleService.java
PRE-CREATION
server/src/main/resources/kylinSecurity.xml ca49255
Diff: https://reviews.apache.org/r/63237/diff/1/
Testing
-------
Thanks,
pengjianhua