• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Oauth
 

Oauth

on

  • 4,783 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,783
Views on SlideShare
4,511
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.”
    • Begriffsklärung
      • User = Nutzer, der Inhalte teilen möchte
      • 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!