AuthenticationHandlers.txt
上传用户:wlfwy2004
上传日期:2016-12-12
资源大小:33978k
文件大小:3k
源码类别:

Jsp/Servlet

开发平台:

Java

  1. Authentication via connector::
  2. In my PHP connector the one from the FBXP project, it is 
  3. possible to require authentication before a user can use
  4. the connector. 
  5. The works in the following manor:-
  6. A1/ File Browser Requests Command From Connector
  7. A2/ Connector.php recieves the request
  8. B1/ File config.php imported
  9. B2/ If authentication required load the authentication
  10. handler file specified in the config, i.e.
  11. $config['auth']['HandlerClass']='Default';
  12. the Auth/Default.php will be imported
  13. B3/ Create new instance of Auth class (defined in the
  14. authentication handler imported.
  15. C1/ Auth class, authenticate method called, passing
  16. the data recieved in the ExtraParams variable
  17. of the query string.
  18. C2/ authenticate method returns a modified copy of the 
  19. $config, to indicate successfull authentication
  20. $config['authSuccess'] should be set to true, if
  21. the authentication failed this should be set to false.
  22. B4a/ on success command is executed and output sent to client
  23. B4b/ on failure blank xml response returned.
  24. A3/ End
  25. How to create my own authentication handler::
  26. Create a file in the Auth folder with the name of the handler (your choice)
  27. i.e. If i wanted to call it MySQL the file i would create would be
  28. MySQL.php in the Auth folder.
  29. Skeleton for the new authentication class::
  30. <?php
  31. class Auth {
  32. function authenticate($data,$config) {
  33. }
  34. }
  35. ?>
  36. as you can see the class must have a method called authenticate which
  37. takes two parameters, the value from the ExtraParams ($data) and a 
  38. reference to the connector configuration $config (so you can change
  39. things depending on the user if you wish) , you can now put what
  40. ever code you like in that method to determine if the user is allowed 
  41. or not. (you may add extra function to the class for internal use too,
  42. these will not be called by the connector, but call them from inside
  43. the authenticate method). The function returns a modified copy of the
  44. $config, with any changes you like + the addition of a top level 
  45. array element key: authSuccess   value: true if authentication
  46. successful, else false.
  47. If you want to limit what the user can do then you may want to change 
  48. the array at: $config['Commands']
  49. This holds an array of command that can be executed, if you remove say
  50. DeleteFolder from the array then the user will not be able to delete 
  51. a folder.
  52. By Example:: There is a default authentication handler that i wrote to
  53. distribute with the connector, so you may want to take a look at it
  54. to get a better idea of whats going on.