分12今回から始まった「ゼロから学ぶOAuth⁠」⁠。全4回の特集にて,これからのWebサービスを開発する上で不可欠な技術「OAuth」について取り上げます。初回は,OAuthの概念について取り上げます。はじめにはじめまして,iKnow!改めsmart.fmの真武です。APIを通じて我々の技術を外部のデベロッパの方々にも提供しています。Provider(後述)を兼ねるサービスとなっています。いった背景のもと,今回私がOAuthについて経験してきたことを連載(全4回)させていただくことになりました。この特集では,以下のようなOAuthに関わる幅広い内容を扱います。Providerの実装それでは,本題に入りましょう。OAuthの概念OAuthとはOAuthは,以下の特徴を持つ「認可情報の委譲」のための仕様です。信頼関係を構築したサービス間でユーザの同意のもとにセキュアにユーザの権限を受け渡しするサービス間で認可情報を受け渡せると,あるサービスがユーザの認可のもとで別のサービスの管理する情報の取得/追加/更新/削除などを行えるようになります。OAuthに対応したサービスでは,ユーザが外部サービスにパスワードを教えることなく,認可情報の委譲が可能です。認可情報の適用範囲を指定したり,有効期限を設定することができるため,ユーザが外部サービスにすべての権限を渡すこと無く,自分が利用したいサービスに最低限必要な権限のみを委譲することができます。そのためBasic認証と比べて柔軟かつセキュアな運用が可能です。外部サービスに自身のGmailのアドレス帳へのアクセス権限を与えたい場合,そのサービスにGmailのメールアドレス&パスワードを教えてしまうと,それらの情報が他のGoogleサービスでも悪用される危険性があります。極端な例ですが,最悪の場合は外部サービスにパスワードを変更され,Gmailアカウントを完全に乗っ取られることもあるでしょう。OAuthではパスワードを渡すこと無く認可情報を委譲することができ,さらに委譲する権限をGmailアドレス帳の読込権限に限定したり有効期限を設けることで,委譲のリスクを最小限に抑えることができます。認可情報の委譲を行う似たような仕様には,GoogleやYahoo!,Flickr,Facebookなどが独自に提供しているものもありますが,OAuthがそれらと大きく違うのは,仕様がオープンなことです(もちろん皆さんは,オープンな仕様を好むでしょう?⁠)⁠。最近ではGoogle,Yahoo!,TwitterなどのAPIでも独自認証やBasic認証と併用する形でOAuthのサポートが広がっています。OpenSocialでのOAuthの利用やOpenIDとOAuthのハイブリッド仕様など,その他のオープンな仕様との連携も注目されています。OAuthの登場人物OAuthには,大きく分けて3つの登場人物がいます。Provider)と呼ばれる,ユーザの認可情報を第三者に渡すサービス。Providerから認可情報を受け取り,ユーザに代っていろいろな情報にアクセスしたり変更/追加を行ったりするサービス。3つめが,Userです。ProviderがConsumerに認可情報を渡すことを許可したり,すでに受け渡した認可情報を無効にするといったことができます。Providerの実装を通してOAuthの全貌を理解します。Inc.で働くWebエンジニア。Provider)の開発にも携わっている。2019」を開催しました。DAY1・DAY2の様子を注目セッションとともにお伝えします。LINEのエンジニア3名がイベントに先駆けて見どころを紹介します。コードの安全性・安定性を高める開発サイクル~テスト管理の効率を上げ,脆弱性診断を自動で行う~本連載では,連載「業務を改善する情報共有の仕掛け」を受けつつ,安全性・安定性を加えた開発サイクルについて考えていきます。若者世代から圧倒的な人気を誇るライブ配信&動画投稿コミュニティアプリ「MixChannel」(ミクチャ)の裏側(レコメンドシステムやサーバサイド開発など)について解説していきます。その他の連載CSS3アニメーションでつくるインターフェイス表現CSS3によるアニメーション表現を紹介していきます。その中でも,幅広い読者に応用してもらえるだろうインターフェイスを主なお題とします。MySQL道普請便り本連載では,MySQLを使ったアプリ開発・運用に関するノウハウをご紹介していきます。RecipeUbuntuの強力なデスクトップ機能を活用するための,いろいろなレシピをお届けします。JavaScriptセキュリティの基礎知識JavaScriptに関するセキュリティ上の問題はどこで発生し,どうすれば防ぐことができるのか?について解説していきます。〜システムをきちんと運用するための基礎知識システムは「作って終わり」ではなく,運用の中でさまざまな問題が発生します。問題の発生に備えて事前にどのような対応をしておくべきなのか,問題発生時に何をしなければならないのか,ポイントを解説していきます。きたみりゅうじの聞かせて珍プレーソフトウェア開発の現場で体験したトホホな失敗,思わずうなる珍プレーをきたみりゅうじ氏が四コママンガで紹介。Linuxのメンテナンスの傍ら,Linuxやオープンソースソフトと日々を過ごす著者が,その魅力とつきあい方を,エッセイ風味でお届けします。PRESS特別編集部員,さわやか笑顔のスーパーハカーはまちちゃんとネット大好き14歳わかばちゃんが,毎号,読者の皆さんから寄せられたおたよりを紹介します。皆さんの日頃の悩みにも答えちゃいますよ。]メールでのお知らせメールで次の案内をお送りしております。メールの配信を希望する方は,利用したい項目をチェックしてメールアドレスを入力し,[登録]ボタンをクリックしてください。UPDATES[ほぼ週間に1回]新刊メールマガジン[ほぼ週間に1回]電脳会議の各号案内[ほぼ1ヵ月半に1回]※変更する場合や停止する場合は,登録情報変更ページをご覧ください。※登録いただいたメールアドレスには,そのお知らせ以外,配信いたしません。Ltd.ページ内容の全部あるいは一部を無断で利用することを禁止します。個別にライセンスが設定されている記事等はそのライセンスに従います。