0

I'm trying to add user groups in my API developed using Luracast Restler using the example class "AccessControl" which implements the iAuthenticate class from Restler.

Files: https://gist.github.com/anonymous/d6a315d1f29dc7722b7d

The problem I'm having is with the method defined in AccessControl::__isAllowed() like so:

Resources::$accessControlFunction = 'AccessControl::verifyAccess';

AccessControl::verifyAccess is never called, so I can't use

$m['class']['AccessControl']['properties']['requires']

to read the requirements for the method being called in the API.

The token system I've added is simply a unique identifier based on a number of criteria which the user gets when a POST /user/token is processed with the correct information.

How can I make this work like it should? According to the docs for Restler, I should be able to have a method defined like I did and it should return a boolean value, like it does. But it never gets called, so...

John Doe
  • 298
  • 1
  • 3
  • 16
  • `Resources` class is used to generate resources.json which is used by Restler API Explorer. If you need to hide API methods on Explorer based on access level you will have to implement a method and point that as `Resources::$accessControlFunction` otherwise it is not needed – Arul Kumaran Apr 06 '13 at 13:35

1 Answers1

0

Boy, do I feel stupid. Turns out I don't actually need the $accessControlFunction. I just had to use {@Requires ...} instead of {@requires ...} in my Test.php class.

Carry on, good people!

John Doe
  • 298
  • 1
  • 3
  • 16