Oauth
Upcoming SlideShare
Loading in...5
×
 

Oauth

on

  • 4,900 views

Kurze Einführung in OAuth mit Code-Beispielen für das 2. Treffen der PHP User Group Rheinhessen am 23. Februar 2010

Kurze Einführung in OAuth mit Code-Beispielen für das 2. Treffen der PHP User Group Rheinhessen am 23. Februar 2010

Statistics

Views

Total Views
4,900
Views on SlideShare
4,628
Embed Views
272

Actions

Likes
4
Downloads
15
Comments
0

4 Embeds 272

http://www.phpug-rheinhessen.de 207
http://www.slideshare.net 36
http://blog.sperr-objekt.de 28
http://www.linkedin.com 1

Accessibility

Categories

Upload Details

Uploaded via as OpenOffice

Usage Rights

CC Attribution-NonCommercial LicenseCC Attribution-NonCommercial License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Oauth Oauth Presentation Transcript

  • OAuth
  • http://oauth.net/
      ” An open protocol to allow secure API authorization in a simple and standard method from desktop and web applications.”
  • heise Developer
      ” Oauth ermöglicht dem User ( end user ) einer Webanwendung ( service provider ) private Ressourcen ( protected resources ) wie Fotos, Videos, Kontaktliste und Kontoauszug mit allen anderen Webanwendungen ( consumer ) auszutauschen, ohne Nutzername und Passwort der Service-Provider-Webanwendung den Konsumenten-Applikationen preiszugeben. OAuth verwendet ein sogenanntes token für die Übertragung von Nutzername und Passwort.”
    View slide
  • Begriffsklärung
    • User = Nutzer, der Inhalte teilen möchte View slide
    • Service Provider = Ort der Inhalte, z.B. Twitter
    • Consumer = Applikation, die Inhalte anfordert
    • Protected Resources = die Inhalte
    • Request/Access Tokens = Ersatz für Login und Passwort
    • OpenID = dezentrale Authentifi- zierung
    • XRDS = Metadaten von Diensten
    • PortableContacts = Kontakte mitnehmen
    • OpenSocial = Austausch zwi-schen sozialen Netzwerken
    • OAuth = API-Autorisierung
    OAuth als Teil des Open Stack
  • twitter.com/oauth_clients/
      Client registrieren Consumer key Consumer secret
  • $config = array( 'callbackUrl' => 'http://example.com/callback.php' , 'siteUrl' => 'http://twitter.com/oauth' , 'consumerKey' => 'gg3DsFTW9OU9eWPnbuPzQ' , 'consumerSecret' => 'tFB0fyWLSMf74lkEu9FTyoHXcazOWpbrAjTCCK48A' ); $consumer = new Zend_Oauth_Consumer( $config ); // Request Token holen $token = $consumer -> getRequestToken() ; // Request Token in der Session persistieren $_SESSION [ 'TWITTER_REQ_TOKEN' ] = serialize ( $token ); // Benutzer zu Twitter weiterleiten $consumer -> redirect() ;
  •  
  • $token = $consumer -> getAccessToken ( $_GET , unserialize ( $_SESSION [ 'TWITTER_REQUEST_TOKEN' ])); $_SESSION [ 'TWITTER_ACCESS_TOKEN' ] = serialize ( $token ); // Request Token kann gelöscht werden $_SESSION [ 'TWITTER_REQUEST_TOKEN' ] = null; $token = unserialize ( $_SESSION [ 'TWITTER_ACCESS_TOKEN' ]); $twitter = 'http://twitter.com/statuses/update.json' ; $client = $token -> getHttpClient ( $configuration ); $client- > setUri ( $twitter ); $client -> setMethod (Zend_Http_Client:: POST ); $client -> setParameterPost ( 'status' , 'Hallo PHPUGRHH' ); $response = $client -> request ();
  • Ähnliche Systeme Facebook Connect = eine in sich geschlossene Lösung Google Friend Connect = nutzt zum Teil Lösungen des Open Stack MySpace ID = eine Mischung aus proprietärem Ansatz und offenen Standards wie OAuth
  • Ausblick OAuth WRAP (Web Resource Authentication Protocol):
      • Work In Progress
      • SSL für mehr Sicherheit
      • Neue Wege, Tokens zu erhalten für Desktop Apps, reine Javascript-Implemtierungen
  • Links (1/2) PHP-Libraries: http://php.net/oauth (PECL) http://pear.php.net/package/HTTP_OAuth (PEAR) http://oauth.googlecode.com/svn/code/php/ http://framework.zend.com/manual/de/zend.oauth.html http://cakebaker.42dh.com/downloads/oauth-component-for-cakephp/ OAuth WRAP: https://oauth.pbworks.com/OAuth-WRAP http://developers.facebook.com/news.php?blog=1&story=350 http://open.lukeshepard.com/oauth-wrap/console/
  • Links (2/2) Blogs, Wikis usw.: http://hueniverse.com/oauth/ (Beginner's Guide to OAuth) https://oauth.pbworks.com/ (OAuth Wiki) http://developers.facebook.com/news.php?tab=blog (Facebook Developers) http://notizblog.org/ (Matthias Pfefferle) http://blog.openwebpodcast.de/ (OpenWeb-Podcast) http://wiki.opensocial.org/index.php?title=OAuth_Use_Cases (SopenSocial) Spezifikationen: http://oauth.net/core/1.0a (OAuth 1.0a)
  • Vielen Dank!