9

The Services module is about to release its new 3.0 version for both D6 & D7. There's an OAuth sub-module to Services that adds a new OAuth UI within the Services configuration UI.

Does anyone know how to configure that UI?

I'm expecting the Services developers will write something up, but given that they are working hard on the official release, the documentation will be the last thing done. In the mean time, if anyone has figured it out from prior familiarity with OAuth, please share your knowledge to us less informed. (As in explaining it to someone who has not used OAuth before.)

2

There is a handbook page covering testing Oauth based services at http://drupal.org/node/942866 . This does assume that you have some familiarity with both oauth and the drupal oauth module.

The basic workflow as far as implementation goes is:

  • Set up an oauth context.
  • Set your service to use oauth authorisation
  • Configure the authorisation for all your resource operations.
  • Configure one or more oauth consumers

For testing you're probably going to have to write your own client code which generates the oauth signature and then passes that with your service requests.

For learning more about Oauth itself I recommend you start by reading this guide which is fairly comprehensive - http://hueniverse.com/2007/10/beginners-guide-to-oauth-part-i-overview/

  • That handbook page ends with "c) To be continued...." and speaks to an OAuth experienced individual. I'll re-read that second 'beginners guide' link again, maybe now it will make sense. FWIW, I have a Services 3 REST api done, but con't figure out the OAuth stuff. Prior experience with application keys in Services 2.x is not enough, I guess. – Blake Senftner Mar 22 '11 at 21:12
2

The OAuth Login Provider contains a pre-configured endpoint with OAuth support:

You need to create OAuth contexts for which you can create OAuth consumers. The reason we have OAuth contexts is that we don't want to tie OAuth contexts directly to endpoints - you should be able to share consumer keys between multiple endpoints and also between services and non-services projects.

In Services you select OAuth as the authentication mechanisms and select a context. You should also be able to select authentication level for each individual resource in the endpoint but I think someone accidentally removed that and we haven't yet added it back yet: http://drupal.org/node/1154420

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.