UserManagedAccess_idcon13

Ryo Ito
User Managed Access



       @ritou
     2012/06/22
    #idcon Vol.13
参考URL
• kantara INITIATIVE UMA WG
  – http://kantarainitiative.org/confluence/display/u
    ma/Home
• 情報セキュリティ技術動向調査(2010 年上
  期) by @tkudos
  – http://www.ipa.go.jp/security/fy22/reports/tech1
    -tg/a_05.html
Agenda
• OAuth & UMA
Roles
•   Resource owner
•   Resource server
•   Client
•   Authorization server
Roles
•   Resource owner : イトウ氏
•   Resource server : mixi
•   Client : openidconnect.info
•   Authorization server : mixi
Roles
•   Resource owner : イトウ氏
•   Resource server : mixi
•   Client : openidconnect.info
•   Authorization server : mixi
これらは一意に紐づいている
分散する認可管理
• User


• Resource Server
  /AuthZ Server


• Client        Web   Mobile   ...
                App    App
Client & Resource Owner
• ClientはResource Ownerの代わりにリ
  ソースアクセスを行う
Client & Resource Owner
• ClientはResource Ownerの代わりにリ
  ソースアクセスを行う

自分が所有するデータにアクセスさせ
るためのしくみ
Client & Resource Owner
• ClientはResource Ownerの代わりにリ
  ソースアクセスを行う

自分が所有するデータにアクセスさせ
るためのしくみ
第3者に共有するしくみではない
(Clientが共有する機能を持つかも)
OAuth
• Resource ServerとAuthorization Serverの
  組み合わせが一意に決められる
  – 認可の管理が各AutnZ Serverに分散
• Clientがアクセスできるのは自らのリソー
  スのみ
UMA
• Resource ServerとAuthorization Serverを
  分離
  – 好みのAuthorization Serverを利用可能
• 第3者へのリソース共有も可能
  – person-to-self
  – person-to-person
  – person-to-organization
• ポリシーはユーザーが決定
Agenda
• OAuth & UMA
• UMA Flow
Roles
• Resource owner → Authorizing User
• Resource server → Host
• Client → Requester
• Authorization server
  → Authorization Manager(AM)
• Requesting Party
    – リソースアクセスするユーザーや組織
UserManagedAccess_idcon13
ここに
 画像を
保存してる

         画像を
         共有
        したい!
Flow
1. Protecting a Resource
2. Getting Authorization
3. Accessing a Resource
1. Protecting a Resource
• Hostが持つリソースの認可管理を行う
  AMを設定
Resource
     Owner


          AuthZ Server
Client




この3者間でOAuthの処理が行われる
Authorization Userはリソースを管理し
てもらうAMを選択/指定
HostがAMと連携していない場合は
Discovery + Dynamic Registration
AM上でAuthorization UserはHostのリ
ソースをAMで保護することに同意する
(AM:このHostのリソースを管理します
よ?)
HostはAMからリソース保護用のアクセ
ストークンを取得
(Protection API Token)
Hostはリソースを登録
(Resource Set Registration API)
HostはAMからポリシー設定用URLを取
得
AMにリダイレクトされたAuthorizing
Userはポリシーを設定する
1. Protecting a Resource
1. HostはAMからリソース登録のためのトーク
   ンを取得する(Protection API Token)
2. HostはリソースセットをAMに登録
3. Authorizing Userはポリシーを設定
2. Getting Authorization
RequesterはHost上のリソースにアクセス
するための認可を得る
Resource
 Server    AuthZ Server




       Client
Authorizing Userは
Requesting Partyに
リソースのURLを通知
Requesterはリソース
にアクセス
HostはRequesterがアクセスに必要な
permissionを得るためのTicketを要求




 resource_set_id,
      scope
AMはTicketを返す




     ticket
HostはRequesterにAMのURIを返し、必要な
permissionを得るように促す




    AM_URI
permission_ticket
ここで一旦、AM, Requester, Requesting Partyに
よるOAuthの処理が入る

                  AuthZ Server




         Client
RequesterはRequesting Partyに対し許可を求める
• AMと連携してClaimsを渡す
• Permissionの有無を問い合わせる
AMはRequesting Partyが同意したことを示すトーク
ンを渡す(authorization API Token)




             AAT
Resource
 Server    AuthZ Server




       Client
RequesterはAATを用いて, Hostが持つResourceにア
クセスするために必要なTokenを要求




              AAT
AMはPermissionのついていないRPTを返す




            RPT
RequesterはAMに”RPTへのPermission追加”を要求




             RPT,
            ticket
AMはPermissionがセットされたRPTを返す




             RPT
2. Getting Authorization
• Requester-AM-Requesting Party間の
  Authorization取得
• Host-AM-Requester間のPermission付与
3. Accessing a Resource
RequesterはRPTを用いてHostにアクセス
する
RequesterはRPTを用いてHost上にあるリ
ソースにアクセス




  RPT
HostはAMにRPTを送り, Statusを要求




      RPT
AMはRPTのStatusを返す




     status
RPTが有効だったときにHostはリソース
を返す




Protected
Resource
3. Accessing a Resource
• HostはAMにRPTを送信してStatusを
  チェックする
• RPTが有効ならばリソースを返す
Agenda
• OAuth & UMA
• UMA Flow
• UMA × OpenID Connect
Claims-based Access Control
• Requesting Partyの属性情報によるアク
  セスコントロール
 – 企業
 – クレジットスコア
 – 年齢
 – Email アドレス
OpenID Connect Integration
• RP : AM
• OP : Requester or others
• User : Requesting Party
OpenID Connect Integration
1.   AliceはAM上でbob@email.comに写真を
     共有するというポリシーを設定
2.   AliceはBobに画像URLを連絡
3.   Bobがクライアントを用いてURLにアクセス
     →AMへ
4.   AMはBobにOpenID ConnectのRPとして
     Emailを要求
5.   Emailがマッチしたら画像を共有
OpenID Connect Integration
1. AliceはAM上でbob@email.comに写真を
   共有するというポリシーを設定
2. AliceはBobに画像URLを連絡
3. Bobがクライアントを用いてURLにアクセス
   →AMへ
4. AMはBobにOpenID ConnectのRPとして
   Emailを要求
5. Emailがマッチしたら画像を共有
信頼できる属性情報流通のしくみが必要
UMA × SITF?
• SITF = Student Identity Trust Framework
• “信頼できる”学生ですよフラグ+αを流通
  させるしくみ
• UMA×SITFで資料を○○大学の学生の
  みに共有が可能
2012Q2
• Interopのサポート
• 新しいユースケースの収集
• Trust Model Documentの精査
   –http://docs.kantarainitiative.org/uma/
    draft-uma-trust.html
蛇足:僕はこう思ったッス
• OAuthのResource Server/Authorization Server
  分離の部分という点は可能性を感じる
  – コンテンツが強いところは認可管理のコストを抑
    えられる
  – スタートアップが安全にリソースアクセスを提供
  – グループ企業内のAPI連携など
• 誰か一緒に実装してみませんか?
続きはブログか何かで!
• Blog : http://d.hatena.ne.jp/ritou
  – デマはよくない!
1 of 58

Recommended

今更OAuth1.0についてRFC読んで理解してみた by
今更OAuth1.0についてRFC読んで理解してみた今更OAuth1.0についてRFC読んで理解してみた
今更OAuth1.0についてRFC読んで理解してみたnemupm
5.6K views37 slides
ID & IT 2013 - OpenID Connect Hands-on by
ID & IT 2013 - OpenID Connect Hands-onID & IT 2013 - OpenID Connect Hands-on
ID & IT 2013 - OpenID Connect Hands-onNov Matake
3.6K views20 slides
introduce "Stealing Machine Learning Models via Prediction APIs" by
introduce "Stealing Machine Learning Models  via Prediction APIs"introduce "Stealing Machine Learning Models  via Prediction APIs"
introduce "Stealing Machine Learning Models via Prediction APIs"Isao Takaesu
2.2K views26 slides
さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代... by
さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...
さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...さくらインターネット株式会社
12.3K views70 slides
文法圧縮入門:超高速テキスト処理のためのデータ圧縮(NLP2014チュートリアル) by
文法圧縮入門:超高速テキスト処理のためのデータ圧縮(NLP2014チュートリアル)文法圧縮入門:超高速テキスト処理のためのデータ圧縮(NLP2014チュートリアル)
文法圧縮入門:超高速テキスト処理のためのデータ圧縮(NLP2014チュートリアル)Shirou Maruyama
46.9K views101 slides
Unique ID generation in distributed systems by
Unique ID generation in distributed systemsUnique ID generation in distributed systems
Unique ID generation in distributed systemsDave Gardner
79.4K views31 slides

More Related Content

Similar to UserManagedAccess_idcon13

Microservices /w Spring Security OAuth by
Microservices /w Spring Security OAuthMicroservices /w Spring Security OAuth
Microservices /w Spring Security OAuthMakoto Kakuta
2.3K views48 slides
OAuth / OpenID Connect (OIDC) の最新動向と Authlete のソリューション by
OAuth / OpenID Connect (OIDC) の最新動向と Authlete のソリューションOAuth / OpenID Connect (OIDC) の最新動向と Authlete のソリューション
OAuth / OpenID Connect (OIDC) の最新動向と Authlete のソリューションTatsuo Kudo
3.6K views40 slides
0905xx Hybrid Memo by
0905xx Hybrid Memo0905xx Hybrid Memo
0905xx Hybrid MemoRyo Ito
993 views36 slides
「金融API向けOAuth」にみるOAuthプロファイリングの実際 #secjaws #finsecjaws01 #oauth #oidc #api by
「金融API向けOAuth」にみるOAuthプロファイリングの実際 #secjaws #finsecjaws01 #oauth #oidc #api「金融API向けOAuth」にみるOAuthプロファイリングの実際 #secjaws #finsecjaws01 #oauth #oidc #api
「金融API向けOAuth」にみるOAuthプロファイリングの実際 #secjaws #finsecjaws01 #oauth #oidc #apiTatsuo Kudo
3.1K views25 slides
ログ管理のベストプラクティス by
ログ管理のベストプラクティスログ管理のベストプラクティス
ログ管理のベストプラクティスAkihiro Kuwano
23.3K views81 slides
The Latest Specs of OpenID Connect at #idcon 9 by
The Latest Specs of OpenID Connect at #idcon 9The Latest Specs of OpenID Connect at #idcon 9
The Latest Specs of OpenID Connect at #idcon 9Ryo Ito
1.7K views46 slides

Similar to UserManagedAccess_idcon13(10)

Microservices /w Spring Security OAuth by Makoto Kakuta
Microservices /w Spring Security OAuthMicroservices /w Spring Security OAuth
Microservices /w Spring Security OAuth
Makoto Kakuta2.3K views
OAuth / OpenID Connect (OIDC) の最新動向と Authlete のソリューション by Tatsuo Kudo
OAuth / OpenID Connect (OIDC) の最新動向と Authlete のソリューションOAuth / OpenID Connect (OIDC) の最新動向と Authlete のソリューション
OAuth / OpenID Connect (OIDC) の最新動向と Authlete のソリューション
Tatsuo Kudo3.6K views
0905xx Hybrid Memo by Ryo Ito
0905xx Hybrid Memo0905xx Hybrid Memo
0905xx Hybrid Memo
Ryo Ito993 views
「金融API向けOAuth」にみるOAuthプロファイリングの実際 #secjaws #finsecjaws01 #oauth #oidc #api by Tatsuo Kudo
「金融API向けOAuth」にみるOAuthプロファイリングの実際 #secjaws #finsecjaws01 #oauth #oidc #api「金融API向けOAuth」にみるOAuthプロファイリングの実際 #secjaws #finsecjaws01 #oauth #oidc #api
「金融API向けOAuth」にみるOAuthプロファイリングの実際 #secjaws #finsecjaws01 #oauth #oidc #api
Tatsuo Kudo3.1K views
ログ管理のベストプラクティス by Akihiro Kuwano
ログ管理のベストプラクティスログ管理のベストプラクティス
ログ管理のベストプラクティス
Akihiro Kuwano23.3K views
The Latest Specs of OpenID Connect at #idcon 9 by Ryo Ito
The Latest Specs of OpenID Connect at #idcon 9The Latest Specs of OpenID Connect at #idcon 9
The Latest Specs of OpenID Connect at #idcon 9
Ryo Ito1.7K views
100121 Scis2010 Itoh by Hiroki Itoh
100121 Scis2010 Itoh100121 Scis2010 Itoh
100121 Scis2010 Itoh
Hiroki Itoh1.1K views
FIWARE の ID 管理、アクセス制御、API 管理 by fisuda
FIWARE の ID 管理、アクセス制御、API 管理FIWARE の ID 管理、アクセス制御、API 管理
FIWARE の ID 管理、アクセス制御、API 管理
fisuda 2K views
FAPI and beyond - よりよいセキュリティのために by Nat Sakimura
FAPI and beyond - よりよいセキュリティのためにFAPI and beyond - よりよいセキュリティのために
FAPI and beyond - よりよいセキュリティのために
Nat Sakimura2.1K views
Financial-grade API Hands-on with Authlete by Tatsuo Kudo
Financial-grade API Hands-on with AuthleteFinancial-grade API Hands-on with Authlete
Financial-grade API Hands-on with Authlete
Tatsuo Kudo499 views

More from Ryo Ito

安全な"○○でログイン"の作り方 @ NDS in Niigata #1 by
安全な"○○でログイン"の作り方 @ NDS in Niigata #1安全な"○○でログイン"の作り方 @ NDS in Niigata #1
安全な"○○でログイン"の作り方 @ NDS in Niigata #1Ryo Ito
2.5K views34 slides
idcon mini vol3 CovertRedirect by
idcon mini vol3 CovertRedirectidcon mini vol3 CovertRedirect
idcon mini vol3 CovertRedirectRyo Ito
1.7K views17 slides
OpenID-TechNight-11-LT-mixi by
OpenID-TechNight-11-LT-mixiOpenID-TechNight-11-LT-mixi
OpenID-TechNight-11-LT-mixiRyo Ito
2.7K views6 slides
Idcon 17th ritou OAuth 2.0 CSRF Protection by
Idcon 17th ritou OAuth 2.0 CSRF ProtectionIdcon 17th ritou OAuth 2.0 CSRF Protection
Idcon 17th ritou OAuth 2.0 CSRF ProtectionRyo Ito
4.6K views31 slides
YAPC::Tokyo 2013 ritou OpenID Connect by
YAPC::Tokyo 2013 ritou OpenID ConnectYAPC::Tokyo 2013 ritou OpenID Connect
YAPC::Tokyo 2013 ritou OpenID ConnectRyo Ito
16.8K views37 slides
なんとなくOAuth怖いって思ってるやつちょっと来い by
なんとなくOAuth怖いって思ってるやつちょっと来いなんとなくOAuth怖いって思ってるやつちょっと来い
なんとなくOAuth怖いって思ってるやつちょっと来いRyo Ito
14.3K views41 slides

More from Ryo Ito(20)

安全な"○○でログイン"の作り方 @ NDS in Niigata #1 by Ryo Ito
安全な"○○でログイン"の作り方 @ NDS in Niigata #1安全な"○○でログイン"の作り方 @ NDS in Niigata #1
安全な"○○でログイン"の作り方 @ NDS in Niigata #1
Ryo Ito2.5K views
idcon mini vol3 CovertRedirect by Ryo Ito
idcon mini vol3 CovertRedirectidcon mini vol3 CovertRedirect
idcon mini vol3 CovertRedirect
Ryo Ito1.7K views
OpenID-TechNight-11-LT-mixi by Ryo Ito
OpenID-TechNight-11-LT-mixiOpenID-TechNight-11-LT-mixi
OpenID-TechNight-11-LT-mixi
Ryo Ito2.7K views
Idcon 17th ritou OAuth 2.0 CSRF Protection by Ryo Ito
Idcon 17th ritou OAuth 2.0 CSRF ProtectionIdcon 17th ritou OAuth 2.0 CSRF Protection
Idcon 17th ritou OAuth 2.0 CSRF Protection
Ryo Ito4.6K views
YAPC::Tokyo 2013 ritou OpenID Connect by Ryo Ito
YAPC::Tokyo 2013 ritou OpenID ConnectYAPC::Tokyo 2013 ritou OpenID Connect
YAPC::Tokyo 2013 ritou OpenID Connect
Ryo Ito16.8K views
なんとなくOAuth怖いって思ってるやつちょっと来い by Ryo Ito
なんとなくOAuth怖いって思ってるやつちょっと来いなんとなくOAuth怖いって思ってるやつちょっと来い
なんとなくOAuth怖いって思ってるやつちょっと来い
Ryo Ito14.3K views
#idcon 15th ritou 2factor auth by Ryo Ito
#idcon 15th ritou 2factor auth#idcon 15th ritou 2factor auth
#idcon 15th ritou 2factor auth
Ryo Ito2.6K views
Open id connect claims idcon mini vol1 by Ryo Ito
Open id connect claims idcon mini vol1Open id connect claims idcon mini vol1
Open id connect claims idcon mini vol1
Ryo Ito2.4K views
OID to OIDC idcon mini vol1 by Ryo Ito
OID to OIDC idcon mini vol1OID to OIDC idcon mini vol1
OID to OIDC idcon mini vol1
Ryo Ito5.6K views
Account Chooser idcon mini Vol.1 by Ryo Ito
Account Chooser idcon mini Vol.1Account Chooser idcon mini Vol.1
Account Chooser idcon mini Vol.1
Ryo Ito2.2K views
BackplaneProtocol超入門 by Ryo Ito
BackplaneProtocol超入門BackplaneProtocol超入門
BackplaneProtocol超入門
Ryo Ito2.1K views
WebIntents × SNS by Ryo Ito
WebIntents × SNSWebIntents × SNS
WebIntents × SNS
Ryo Ito1.2K views
Idcon11 implicit demo by Ryo Ito
Idcon11 implicit demoIdcon11 implicit demo
Idcon11 implicit demo
Ryo Ito4.1K views
OpenID_Connect_Spec_Demo by Ryo Ito
OpenID_Connect_Spec_DemoOpenID_Connect_Spec_Demo
OpenID_Connect_Spec_Demo
Ryo Ito1.4K views
OAuth 2.0 MAC Authentication by Ryo Ito
OAuth 2.0 MAC AuthenticationOAuth 2.0 MAC Authentication
OAuth 2.0 MAC Authentication
Ryo Ito1.9K views
OAuth 2.0 Dance School #swj by Ryo Ito
OAuth 2.0 Dance School #swj OAuth 2.0 Dance School #swj
OAuth 2.0 Dance School #swj
Ryo Ito874 views
Ritou idcon7 by Ryo Ito
Ritou idcon7Ritou idcon7
Ritou idcon7
Ryo Ito689 views
Summary of OAuth 2.0 draft 8 memo by Ryo Ito
Summary of OAuth 2.0 draft 8 memoSummary of OAuth 2.0 draft 8 memo
Summary of OAuth 2.0 draft 8 memo
Ryo Ito678 views
Introduction of OAuth 2.0 vol.1 by Ryo Ito
Introduction of OAuth 2.0 vol.1Introduction of OAuth 2.0 vol.1
Introduction of OAuth 2.0 vol.1
Ryo Ito1.3K views
Anonymous OAuth Test by Ryo Ito
Anonymous OAuth TestAnonymous OAuth Test
Anonymous OAuth Test
Ryo Ito1.2K views

Recently uploaded

SSH応用編_20231129.pdf by
SSH応用編_20231129.pdfSSH応用編_20231129.pdf
SSH応用編_20231129.pdficebreaker4
335 views13 slides
SNMPセキュリティ超入門 by
SNMPセキュリティ超入門SNMPセキュリティ超入門
SNMPセキュリティ超入門mkoda
355 views15 slides
JJUG CCC.pptx by
JJUG CCC.pptxJJUG CCC.pptx
JJUG CCC.pptxKanta Sasaki
6 views14 slides
定例会スライド_キャチs 公開用.pdf by
定例会スライド_キャチs 公開用.pdf定例会スライド_キャチs 公開用.pdf
定例会スライド_キャチs 公開用.pdfKeio Robotics Association
111 views64 slides
Windows 11 information that can be used at the development site by
Windows 11 information that can be used at the development siteWindows 11 information that can be used at the development site
Windows 11 information that can be used at the development siteAtomu Hidaka
88 views41 slides
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向 by
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向Hitachi, Ltd. OSS Solution Center.
60 views26 slides

Recently uploaded(11)

SSH応用編_20231129.pdf by icebreaker4
SSH応用編_20231129.pdfSSH応用編_20231129.pdf
SSH応用編_20231129.pdf
icebreaker4335 views
SNMPセキュリティ超入門 by mkoda
SNMPセキュリティ超入門SNMPセキュリティ超入門
SNMPセキュリティ超入門
mkoda355 views
Windows 11 information that can be used at the development site by Atomu Hidaka
Windows 11 information that can be used at the development siteWindows 11 information that can be used at the development site
Windows 11 information that can be used at the development site
Atomu Hidaka88 views
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20... by NTT DATA Technology & Innovation
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料) by NTT DATA Technology & Innovation
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
The Things Stack説明資料 by The Things Industries by CRI Japan, Inc.
The Things Stack説明資料 by The Things IndustriesThe Things Stack説明資料 by The Things Industries
The Things Stack説明資料 by The Things Industries
CRI Japan, Inc.58 views
さくらのひやおろし2023 by 法林浩之
さくらのひやおろし2023さくらのひやおろし2023
さくらのひやおろし2023
法林浩之96 views

UserManagedAccess_idcon13