[ https://issues.apache.org/jira/browse/HADOOP-5851?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
zhiyong zhang updated HADOOP-5851: ---------------------------------- Attachment: HADOOP-5851.patch a) add another filter code named LdapIpDirFilter.java, will be installed as a deployment descriptor (in web.xml). b) program flowchart. 1. IP = HttpServletRequest.getRemoteAddr() 2. Ldap.search(uniqueMember:cn=IP) to find role. 2.a. if nothing found, 403 return 3. role A was found, from role A, extract userId and HDFS root paths allowed, say PLIST. 4. log userId. 5. get PATH = HttpServletRequest.getPathInfo() 6. check if PATH or its parents is in PLIST 6.a. if not, 403 return. 7. access allowed, filter pass c) use a Dummy LDAP Object server to do the unit test. > proxy to call LDAP for IP lookup and get user ID and directories, validate > requested URL > ---------------------------------------------------------------------------------------- > > Key: HADOOP-5851 > URL: https://issues.apache.org/jira/browse/HADOOP-5851 > Project: Hadoop Core > Issue Type: New Feature > Components: contrib/hdfsproxy > Reporter: zhiyong zhang > Assignee: zhiyong zhang > Priority: Critical > Attachments: HADOOP-5851.patch > > > It is easy to manage user accounts using LDAP. by adding support for LDAP, > proxy can do IP authorization in a headless fashion. > when a user send a request, proxy extract IP address and request PathInfo > from the request. then it searches the LDAP server to get the allowed HDFS > root paths given the IP address. Proxy will match the user request PathInfo > with the allowed HDFS root path, return 403 if it could not find a match. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.