OAuthプログラミング:パスワードを処理せず、代わりに使用する

開示: あなたのサポートはサイトの運営を維持するのに役立ちます!このページで推奨する一部のサービスについては、紹介料を稼ぎます.


OAuthは、ユーザーに2つの異なるアプリケーションがユーザーのパスワードを知らなくても、ユーザーに代わって互いに通信できるようにするシステムです。あなたは間違いなくこのシステムを何度も使用しましたが、あなたはそれを知らないかもしれません。たとえば、一部のコメントシステムでは、FacebookまたはGoogle+アカウントでログインできます。これはOAuthで行われます.

OAuthの仕組み?

WordPressブログがあり、記事を公開するたびに自動的にアナウンスをツイートしたいとします。したがって、プラグインWP to Twitterを使用します。プラグインにTwitterのパスワードを教えるのではなく、OAuthを使用します。.

まず、自分のアカウントを使用してツイートを投稿することをWPにTwitterに指示します。したがって、WP to TwitterはTwitterにアクセスして許可を求めます。 TwitterはWPからTwitterにトークンを提供します。これは、Twitterにアクセスしてリクエストを承認するための指示とともにトークンを提供します。あなたがそれをしたら、WP to Twitterはあなたのためにツイートを投稿することができます.

OAuthの簡単な歴史

2006年、TwitterはOpenIDを実装する過程にありました。OpenIDは、ユーザーが単一のIDを取得して、インターネット上のさまざまなアカウントにログインできるようにするために広く使用されているシステムです。しかし、アクセス委任APIの構築を可能にするオープンスタンダードはありませんでした。そこで、開発者はWebサイトの特定の側面へのアクセスを要求および許可するアプリケーションを作成できるOAuthに取り組み始めました。.

当初の仕様であるOAuth 1.0は2007年にリリースされましたが、2010年まで公式にはなりませんでした。非常に便利なシステムであり、広く使用されていましたが、モバイルデバイスでの使用など、特定の用途向けにはうまく設計されていませんでした。そのため、2012年にOAuth 2.0がリリースされました。 2つのバージョンには互換性がありません。しかし、OAuth 2.0はより安全で、電話やアプライアンスを含むさまざまな種類のデバイス用の「承認フロー」を使用して設計されています.

論争

Eran Hammerは、OAuth 1.0の開発に携わった主要な人物の1人でした。彼はOAuth 2.0にも関与していましたが、公式リリースの少し前に、プロジェクトに参加しませんでした。そして、彼はOAuthの両方のバージョンに満足していなかった(これは、彼が行った仕事で安全ではないトークで見ることができます)ため、独自のOzを作成しました。.

OAuthの概要

独自のアプリケーションにOAuthを追加する前に、システムの一般的な概要を理解することをお勧めします.

  • Hueniverse OAuthの紹介:Eran HammerによるOAuth 1.0の明確な紹介.
  • OAuth for Dummies:Mark TrappによるOAuth 1.0の概観.
  • OAuth 2.0の紹介:さまざまなバージョンのOAuthの違いの概要.
  • 8ステップのOAuth2チュートリアルのプレビュー:PHPを使用したOAuthの簡単なビデオの例.

OAuthの概要

OAuthは開発プラットフォームではありません。これは、他のアプリケーションの一部として使用するツールです。たとえば、ユーザーのFacebookアカウントにのみアクセスできるプログラムを作成したくないとします。なんらかの理由でそうしたいと思うでしょう。したがって、このページを読んでいる場合、上記で説明したブログのツイートプラグインのように実行するには、OAuthの機能を必要とするアプリケーションが必要です。.

一般的な紹介

一般的な紹介は次のとおりです。

  • OAuth 2 Simplified:一般的な意味でのAaron Pareckiによる開発プロセスの概要.
  • OAuthコーディングの例:多くの異なる言語でのさまざまな例.
  • ドキュメントのサンプルコードを読んでください:一般的なコードサンプルと特定のサービスのサンプル。以下の例が含まれます:
    • Bitbucket
    • GitHub
    • グーグル
    • フェイスブック
    • LinkedIn
    • タンブラー

特定のサービス

一般に、OAuthの使用は、接続するサービスによって異なります。ほとんどのサービスには、独自の癖と拡張機能があります。以下に、人気のあるサービスのチュートリアルをいくつか示します。

  • TwitterでのOAuthの使用:さまざまな言語の例を使用したOAuthの完全な紹介.
  • Yahoo! OAuthコーディングの例:BOSS APIを使用したOAuthの例.
  • Google OAuthコンシューマー:2レッグおよび3レッグOAuthのPHPコード.
  • OAuth2認証:Facebookアカウントでログイン.
  • Facebook Dialog OAuthチュートリアル:PHPとPythonを使用した完全な例.

高度なOAuthコーディング

OAuthの基本を理解した後、学習を続けることができるいくつかの方法があります。.

OAuthについて真剣に考えたい場合は、OAuthに関する本を入手する必要があります。徹底的に紹介しているものはたくさんあります.

  • Ryan BoydによるOAuth 2.0入門:モバイルデバイスのセクションを含む、OAuthのほとんどの側面をカバーする非常に短い紹介.
  • OAuth 2.0:Getting Started in API Security by Matthias Biehl:セキュリティを強調し、OAuthとOpenIDを対比するもう1つの短い本.
  • Charles BihisによるOAuth 2.0の習得:最大のサービスを使用した例を使用した徹底的な紹介.
  • 高度なAPIセキュリティ:Prabath SiriwardenaによるOAuth 2.0、OpenID Connect、JWS、およびJWEによるAPIの保護:さまざまなプロトコルのさまざまなバージョンを検討するセキュリティに関する一般的な本.

オンラインフォーラム

OAuthに関する一般的なオンラインフォーラムで利用できるものはあまりありません。一般に、フォーラムは特定のサービスに焦点を当てています.

  • Stack Overflow OAuth Tagged Articles:プログラミングの質問のための究極のサイト。.
  • Getty Image APIフォーラム:Getty Images APIに関する情報ですが、役立つ情報がたくさんあります.
  • Yahoo! OAuth承認モデル:Yahoo!へのアクセス検索ツールによる開発ネットワーク.

OAuthツール

多くのサービスがOAuthを容易にするツールを提供します.

  • OAuth 1.0プロトコル:元のプロトコル.
  • OAuth 2.0:仕様の最終バージョンと使用可能なライブラリのリスト.
  • OAuth 2.0を使用してGoogle APIにアクセスする:OAuth 2.0 Playgroundを含むGoogleの優れたリソース.

図書館

ライブラリのより完全なリストについては、oauth.netを参照してください。 OAuth 1.0の一部を含む追加の機能を次に示します。

  • PHP.net OAuth:オブジェクト指向のOAuth 1.0ライブラリ.
  • RubyのOAuth:OAuthクライアントとサーバーの両方を実装するためのRubyGem.
  • OAuth2 C#ライブラリ:多くのC#ライブラリが利用可能です.
  • Oauth 1.0.1:OAuth 1.0用のPythonライブラリ.

今後

OAuthはそれ自体が目的ではなく、プログラムにさらに強力な機能を追加できるツールであるため、実行することで習得する可能性があります。ここでは、使用を開始し、システムを掘り下げるための多くのリソースを紹介しました。使い方はあなた次第.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map