[ 
https://issues.apache.org/jira/browse/HBASE-10919?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13961364#comment-13961364
 ] 

Andrew Purtell commented on HBASE-10919:
----------------------------------------

We could start by doing something similar to Hadoop's LDAP group mapper (see 
org.apache.hadoop.security.LdapGroupsMapping). It would be familiar to admins 
who may have set that up before already.

You configure this provider with a user and password used to bind to the LDAP 
server, and the location of the LDAP server. Then, the base distinguished name 
to use for searches, and a filter expression to apply when searching for user 
objects, e.g.
{noformat}
(&(objectClass=user)(cn={0}))
{noformat}
We would then need to add new configuration for filtering out the object 
attributes we are not interested in. Any attributes remaining could become 
auths. 

Because the SLGs run inside the RegionServer processes with superuser 
privileges, it would be possible for them to add new labels to the system label 
dictionary dynamically as needed. Therefore the universe of labels/auth names 
would not need to be defined up front for new attributes found on relevant 
objects returned from LDAP searches.

Because this SLG would otherwise want to query LDAP for every user request, we 
would want to introduce caching of LDAP query responses with a limited 
lifetime, perhaps 5 or 10 minutes, and reuse the results of previous searches 
until they expire. 

> [VisibilityController] ScanLabelGenerator using LDAP
> ----------------------------------------------------
>
>                 Key: HBASE-10919
>                 URL: https://issues.apache.org/jira/browse/HBASE-10919
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Andrew Purtell
>             Fix For: 0.99.0, 0.98.2
>
>
> A ScanLabelGenerator that queries an external service, using the LDAP 
> protocol, for a set of attributes corresponding to the principal represented 
> by the request UGI, and converts any returned in the response to additional 
> auths in the effective set.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to