OSSTech OpenSSO社内勉強会資料



Similar documents
オープンソース・ソリューション・テクノロジ株式会社 会社紹介

OpenAM(OpenSSO) のご紹介

はじめに 本資料の目的 SAML の認証方式の指定について把握する Service Provider(SP) 側の視点 利用する IdP に認証方式を指定 Identity Provider(IdP) 側の視点 SP に実施した認証方式の応答 OpenAM の実装を把握する OpenAM を SP

OSSTechプレゼンテーション

オープンソース・ソリューション・テクノロジ株式会社 会社紹介

CA Federation ご紹介資料

オープンソース・ソリューション・テクノロジ株式会社 会社紹介

SAML認証

目 次 自 己 紹 介 シングルサインオンとは? なぜ 今 シングルサイン オン? OpenAMの 紹 介 シングルサインオンの 方 式 SAMLによるシングルサインオン ID 管 理 との 組 み 合 わせで 導 入 効 果 倍 増! プロトコル(SAML)の 話 が 大 半 なので 眠 くなるか

オープンソース・ソリューション・テクノロジ株式会社 会社紹介

SHANON MARKETING PLATFORM 管理者シングルサインオン機能ユーザーマニュアル 管理者シングルサインオン機能ユーザーマニュアル Ver /06/01 株式会社シャノン Copyright SHANON Co., Ltd. All Rights Reserved.

Active Directory フェデレーションサービスとの認証連携

ROBOTID_LINEWORKS_guide

intra-mart Accel Platform — SAML認証セットアップガイド   初版  

ek-Bridge Ver.2.0 リリースについて

desknet s NEO SAML 連携設定手順書 2019 年 1 月 株式会社セシオス 1

intra-mart Accel Platform — SAML認証セットアップガイド   第2版  

SeciossLink クイックスタートガイド

PowerPoint Presentation

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション

IceWall FederationによるOffice 365導入のための乱立AD対応ソリューション(オンプレミス型)

SinfonexIDaaS機能概要書

Microsoft PowerPoint - 【資料3】Open ID概要.ppt

SeciossLink クイックスタートガイド(Office365編)

SeciossLink クイックスタートガイド Office365 とのシングルサインオン設定編 2014 年 10 月株式会社セシオス 1

KS_SSO_guide

学認(Shibboleth)との認証連携

OSSTechドキュメント

オープンソース・ソリューション・テクノロジ株式会社 代表取締役 チーフアーキテクト 小田切耕司

SAML

内容 ( 演習 1) 脆弱性の原理解説 基礎知識 脆弱性の発見方法 演習 1: 意図しない命令の実行 演習解説 2

PowerPoint プレゼンテーション

intra-mart Accel Platform — SAML認証セットアップガイド   第3版  

OSSTechプレゼンテーション

FUJITSU Cloud Service K5 認証サービス サービス仕様書

今後の認証基盤で必要となる 関連技術の動向 株式会社オージス総研テミストラクトソリューション部八幡孝 Copyright 2016 OGIS-RI Co., Ltd. All rights reserved.

ppt

untitled

スライド 1

管理サイト操作マニュアル Version.1.1. デジアナコミュニケーションズ株式会社

管理者マニュアル

目次

9 WEB監視

FUJITSU Cloud Service for OSS 認証サービス サービス仕様書

目次 1. はじめに 目的 推奨環境 事前準備 環境構築の順番 OpenAM アイデンティティープロバイダの作成 リモートサービスプロバイダ Google Apps の設定 Google

1

技術レポート 1)QuiX 端末認証と HP IceWall SSO の連携 2)QuiX 端末認証と XenApp の連携 3)QuiX 端末認証 RADIUS オプションと APRESIA の連携 Ver 1.1 Copyright (C) 2012 Base Technology, Inc.

OpenAMトレーニング

第 3 版 はじめに 06 年 0 月 6 日から Active!mail にログインする際は DOUBLE GATE( 多要素認証システム ) を使用して認証します ログイン認証方法は 学内ネットワークを利用する場合と学外ネットワークを利用する場合で異なります 学内から利用する場合

BACREX-R クライアント利用者用ドキュメント

How to Use the PowerPoint Template

<4D F736F F D2089E696CA8F4390B35F B838B CA816A>

オープンソース・ソリューション・テクノロジ株式会社 代表取締役 チーフアーキテクト 小田切耕司

CA SiteMinder ユーザのエンタープライズでのフェデレーション

memcached 方式 (No Replication) 認証情報は ログインした tomcat と設定された各 memcached サーバーに認証情報を分割し振り分けて保管する memcached の方系がダウンした場合は ログインしたことのあるサーバーへのアクセスでは tomcat に認証情報

2. メンバー管理 2.1 管理者権限 2.2 組織の登録 2.3 役職の登録 2.4 メンバーの登録 2.5 共有アドレス帳 2.6 グループの管理

WEBシステムのセキュリティ技術

1 ユーザ認証を受けた権限で アプリケーションを利用するために ログインプロキシにアクセスします 2 ログインプロキシにより Shibboleth SP から Shibboleth IdP の認証画面にリダイレクトされます 3 ブラウザに認証画面を表示します 4 認証画面にユーザ / パスワードを入

POWER EGG 3.0 Office365連携

CybozuWorkspace連携ホワイトペーパー_v1.2

AXIOLE V Release Letter

PowerPoint プレゼンテーション

Web ( ) [1] Web Shibboleth SSO Web SSO Web Web Shibboleth SAML IdP(Identity Provider) Web Web (SP:ServiceProvider) ( ) IdP Web Web MRA(Mail Retrieval

目次 1. アプリケーション登録 利用設定 CardDAV 設定 デフォルトアカウント設定 アプリケーションのログイン ログアウト KDDI SMARTアドレス帳 にログインする KDDI SMARTアドレス帳 にログイン

untitled

} 学割サービス } StudentBeans } ASKNET (Verification Service for Academic Discount) } アカデミックパス } ウェルネット } SheerID } InAcademia (edugain) } ビッグローブ } edugain

Web-EDI 機能運用開始までの流れ Ver.1.03 平成 28 年 2 月 公益財団法人日本産業廃棄物処理振興センター情報処理センター

Plone Web Plone OpenID 1.4 Gracie Gracie OpenID Python Plone GNU GPL Plone Gracie Password Authentication Module (PAM) UNIX OpenID 1. OpenID 2 OpenID

V-CUBE One

R-2 マイページトップ マイページのトップページです メニューバーより機能を選択し 様々な情報を表示します メニューバー [ ブログ ]: ブログ一覧画面を表示します [ ブログ閲覧履歴 ]: ブログの閲覧履歴一覧画面を表示します [ メッセージ ]: メッセージ確認画面を表示します [ 訪問履歴

OSSTechプレゼンテーション

目次 1. 教育ネットひむかファイル転送サービスについて ファイル転送サービスの利用方法 ファイル転送サービスを利用する ( ひむか内 ) ファイル転送サービスへのログイン ひむか内 PCでファイルを送受信する

1. WebShare(HTML5 版 ) 編 1.1. ログイン / ログアウト ログイン 1 WebShare の URL にアクセスします xxxxx 部分は会社様によって異なります xxxxx 2 ユーザー名 パ

インストール要領書

HDC-EDI Manager Ver レベルアップ詳細情報 < 製品一覧 > 製品名バージョン HDC-EDI Manager < 対応 JavaVM> Java 2 Software Development Kit, Standard Edition 1.4 Java 2

オープンソース・ソリューション・テクノロジ株式会社 2009/5

9. システム設定 9-1 ネットワーク設定 itmはインターネットを経由して遠隔地から操作を行ったり 異常が発生したときに電子メールで連絡を受け取ることが可能です これらの機能を利用するにはiTM 本体のネットワーク設定が必要になります 設定の手順を説明します 1. メニューリスト画面のシステム設

(8) [ 全般 ] タブをクリックします (9) [ インターネット一時ファイル ] の [ 設定 ] ボタンをクリックします (10) [ 保存しているページの新しいバージョンの確認 ] から [ ページを表示するごとに確認する ] をクリックします (11) [OK] ボタンをクリックしていき

バージョンアップにおける変更点 バージョンアップにおける変更点 07 年 月 7 日に実施したバージョンアップにおける変更点は次の通りです ) 最新 OS/ ブラウザへの対応 次の OS とブラウザの組み合わせが動作環境となりました [Windows 7 SP/8./0] Microsoft Edg

アカウント管理者 操作ドキュメント

学認とOffice 365 の 認証連携

JPNICプライマリルート認証局の電子証明書の入手と確認の手順

<4D F736F F D DEC90E096BE8F C E838B82CC836A C E312E31816A2E646F63>

はじめに 注意事項本資料に記載の内容は 弊社が特定の環境において 基本動作や接続動作を確認したものであり すべての環境で機能 性能 信頼性を保証するものではありません 輸出時の注意 AX シリーズに関し 本製品を輸出される場合には 外国為替及び外国貿易法の規制並びに米国輸出管理規制など外国の輸出関連

位置参照情報 API 仕様 ( 試行版 ) 位置参照情報 API 仕様 ( 試行版 ) Ver 1.0b 平成 26 年 12 月 国土交通省国土政策局国土情報課

目次 はじめに Page. 3 1 ログイン方法 4 2 監視設定 5 3 監視設定の変更 削除 18 4 性能情報確認 24 5 問い合わせ先 27 ご参考 動作環境について 28 改版履歴 29 Page 2 NEC Corporation 2014

Microsoft PowerPoint - shib-training-r13_ pptx[読み取り専用]

目次 1. はじめに 当ドキュメントについて 環境設計 フロー モデルの設計 ログイン タイプの決定 その他情報の決定 IBM Connections Cloud との

目次 1. 会員登録 推奨動作環境 サイト閲覧環境 シミュレーション動作環境 各種設定について メールアドレスおよびニックネームの登録 個人情報の取り扱い

JAIRO Cloud 初級ユーザー向け手引書 1. ユーザーアカウント管理 JAIRO Cloud 事務局 協力 : オープンアクセスリポジトリ推進協会 (JPCOAR) JAIRO Cloud 運用作業部会 ver date 修正内容 /11 初版

1. へアクセスしてください Licensing Portal を利用するためには へアクセスしてください もしくは ベリタスのホームページ から Customer Cente

untitled

統合 ID 管理システム SECUREMASTER/EnterpriseIdentityManager(EIM) 連携先システム : AD 1, 業務サーバ 3 監査オプション : あり ユーザ ID 情報を一元管理し 業務システム (CSV インポートが可能なシステム ) や AD などの ID

ミーティングへの参加

VPN 接続の設定

目次 1 はじめに NTT コミュニケーションズビジネスポータルとは ご利用の流れ 事前準備をする 初めてログインする Arcstar IP Voice の設定変更 契約変更をする ログアウトする..

FAQ案(Linkup Manager)

メール利用マニュアル (Web ブラウザ編 ) 1

目次事前準備 コントロールパネルのアクセス方法と概要 ログイン 初回設定 コントロールパネルメニュー コントロールパネルの概要 ダッシュボード ユーザー画面 設

Transcription:

Open Source Solution Technology OpenSSO 社内勉強会第二回 - SAML - オープンソース ソリューション テクノロジ株式会社 2009/12/1 野村健太郎 - 1 -

目次 概要 SAML とは SSO の全体像 SAMLによるSSO 実現のための準備 SSOの開始 詳細 SAMLの構成要素 SAMLアサーション SAMLプロトコル SAMLバインディング デモ その他 - 2 -

概要 - SAML とは? SAML:Secure Assertion Markup Lauguage 認証 認可 ユーザ属性情報などを XML で送受信するためのフレームワーク ( Markup Lauguage だが 言語だけの規約ではない ) 公式サイトより : XML-based framework for communicating user authentication, entitlement, and attribute information. 認証情報 を どんなフォーマット (XML) で どの通信プロトコルを使って 送受信するか規定する 最新バージョンが SAML2.0-3 -

概要 - SAML 仕様の原文 http://www.oasis-open.org/specs/index.php から入手可能 saml-authn-context-2.0-os.pdf saml-bindings-2.0-os.pdf saml-conformance-2.0-os.pdf saml-core-2.0-os.pdf saml-glossary-2.0-os.pdf saml-metadata-2.0-os.pdf saml-profiles-2.0-os.pdf saml-sec-consider-2.0-os.pdf それぞれが数十ページ なんとか挫折せずに読める文章量 - 4 -

概要 - SAML での SSO 全体像 ユーザ 認証基盤 ID 管理 (1) ログイン エンティティと呼ぶ (entity: 主体 存在 ) ユーザ IdP SP Identity Provider (IdP) 認証情報 ( アサーション ) (2) サービスへアクセス ( ログイン操作なし ) ブラウザ経由の通信 認証情報 ( アサーション ) IdP-SP 間で通信 認証情報 ( アサーション ) 認証情報 ( アサーション ) XML で認証情報をやりとりする Cookie ではない Service Provider (SP) 事業者 A のサービス (hoge.com) 事業者 B のサービス (foo.com) - 5 -

概要 - SAML で SSO を実現するための準備 (1)IdP の設置 (3)CoT の構成 トラストサークル (Circle of Trust - Cot) (2)SP の設置 IdP アカウント連携 アカウント連携 SP アカウント連携 ID/ パスワード (4) アカウント連携の許諾 ( ユーザ毎 ) ユーザ情報 - 6 -

概要 - トラストサークル (Circle of Trust - CoT) 信頼の輪 CoT 内の SP に対してのみ SSO 可 SP1 SP2 IdP SP2 SP2 Circle of Trust 能 IdP-SP 間でお互いを事前に登録し CoT を構成しておく必要がある 一つの CoT 内に複数の IdP が存在することもある - 7 -

概要 - アカウント連携 (1) IdP のアカウントと SP のアカウントを紐付ける NameID というユーザ識別子を IdP と SP 間で共有することで実現する NameID には以下のものが使用される メールアドレス X.509 の Subject ユーザ属性情報 ( ユーザ ID など Google Apps はこのタイプ ) 仮名 : ランダムな文字列によるユーザ識別 - 8 -

概要 - アカウント連携 (2) IdP ユーザ A IdP ユーザ A uid attr abc 仮名 SP ユーザ 1 SP ユーザ 1 仮名による連携 IdPのアカウントとSPのアカウントを仮名 ( 仮 IDのようなもの ) で紐付ける IdP/SP 内のアカウント情報 ( ユーザ IDなど ) を隠蔽したままアカウント連携可能ユーザ毎に設定する : 初回のみ IdPとSPにそれぞれのID/ パスワードでログインする必要あり ユーザ属性情報による連携 IdPのアカウントとSPのアカウントをユーザ属性で直接連携自システム内の情報の一部を相手に知らせる必要がある Google Apps はこの方式 - 9 -

概要 - 認証連携 (SSO) CoT の構成 アカウント連携が完了して SSO 可能になる ユーザ 認証基盤 ID 管理 (1) ログイン Identity Provider (IdP) IdP-SP 間で通信 認証情報 ( アサーション ) ブラウザ経由の通信 認証情報 ( アサーション ) (2) サービスへアクセス ( ログイン操作なし ) 認証情報 ( アサーション ) Service Provider (SP) 事業者 A のサービス (hoge.com) 事業者 B のサービス (foo.com) - 10 -

概要 - アカウントのライフサイクル アカウント作成 ~SSO の利用 ~ アカウント削除のサイクル アカウントの作成 アカウント連携 シングルサインオン IdP と SP の間でアカウントを連携することを許諾する サービス利用 ログアウト アカウント連携完了後にシングルサインオン可能となる アカウント連携の解除 アカウント削除 - 11 -

詳細 - SAML の構成要素 プロファイル Web SSO 等を実現するためのアサーション プロトコル バインディングの組み合わせ方法を規定 バインディング SAML 要求 応答メッセージを通信プロトコル (HTTP,SOAP など ) にマッピングする方法を規定 プロトコルアサーションをやりとりするための要求 応答メッセージを規定 アサーション認証情報 属性情報 権限許諾情報の格納方法を規定 ユーザが SP にアクセスすると SP は IdP に対して認証要求を送信し IdP は認証要求に対する認証応答を返す SAML 認証要求メッセージを base64 エンコードして HTTP メッセージボディに埋め込んで POST する 認証要求 (XML) に対して 情報 YYY を含んだ認証応答 (XML) を返す XML のこの要素に情報 XXX を格納する 分かり易くするために 不正確かもしれないので注意 - 12 -

詳細 - アサーション IdP が発行するユーザに関する証明情報の XML <saml:assertion xmlns:saml="urn:oasis:names:tc:saml:2.0:assertion" Version="2.0" ID="s2907181983bc6f588aeb045fca183d671224506ec" IssueInstant="2009-11-18T08:28:09Z"> アサーション発行者アサーションのデジタル署名アサーションの利用条件ユーザ識別子 (NameID) </saml:assertion> - 13 -

詳細 SAML プロトコル 認証要求 (AuthnRequest) SP が IdP に対して ユーザの認証情報を要求する <samlp:authnrequest ID= xxx Version= 2.0 Destination= http://idp.osstech.co.jp/idp/sso > 認証要求情報が入る </samlp:authnrequest> 認証応答 (Response) IdP が SP にユーザの認証情報 ( アサーション ) を送付する <samlp:response ID= xxx Version= 2.0 Destination http://sp.osstech.co.jp/sp/sso > < saml:assertion...> アサーションが入る </saml:assertion> </samlp:authnrequest> - 14 -

詳細 - バインディング (Binding) SAML メッセージを既存の通信プロトコル (HTTP SOAP など ) にマッピングする ( 埋め込む ) 方法を規定 IdP-SP 間の通信有無で分けてみる ( 一番使いそうなやつだけ抜粋 ) 無 :HTTP Redirect HTTP POST バインディング HTTP Redirect:Google Apps ( 認証要求 ) で利用されている HTTP POST:Google Apps( 認証応答 ) salesforce で利用されている 有 :HTTP Arifact バインディング - 15 -

詳細 - HTTP Redirect/POST バインディング ブラウザが通信を中継し IdP-SP 間の通信が発生しない IdP (1) ログイン 認証情報 ( アサーション ) ユーザ (2) サービスへアクセス ( ログイン操作なし ) 認証情報 ( アサーション ) SP (2) アサーションが返される アサーションを HTTP Redirect もしくは HTTP Post で送信 方式説明特徴 HTTP Redirect SAML のメッセージを Base64 エンコードして URL パラメータに載せて GET メソッドで送信 (HTTP 302 を利用 ) URL が長すぎると ブラウザの URL の長さ制限に引っかかる可能性がある (IE は 2,083 文字らしい ) HTTP POST Base64 エンコードした SAML メッセージを HTML フォームに載せて POST メソッドで送信 JavaScript で自動的に POST リクエストを送信させるのが一般的? Google Apps salesforce はこのタイプ IdP へのログイン SP への遷移を自動化するには ブラウザで JavaScript が実行可能となっている必要がある - 16 -

詳細 - HTTP Redirect/POST バインディング Browser SP IdP SPのコンテンツへアクセスユーザは未認証 SAML 認証要求メッセージ (AuthnRequest) HTTP Redirect or POST ログイン画面 ユーザ認証 ( ユーザ ID/ パスワード送信 ) SAML 認証応答メッセージ (Response 認証情報 ( アサーション ) を含む ) アサーション生成 HTTP Redirect or POST SP のコンテンツ - 17 -

詳細 HTTP Artifact バインディング Artifact:SAML メッセージ識別用のランダム文字列 Artifact を利用して IdP-SP 間で直接 SAML メッセージを送受信する (SOAP を利用 ) アサーションがクライアントに渡ることがない ユーザ (1) ログイン Artifact IdP(SP) (4) アサーションを SP へ送信 認証情報 ( アサーション ) Artifact (2) ブラウザ経由で Artifact を SP に送信 (3)Artifact を使用して SAML メッセージを IdP へ問い合わせ SP(IdP) (5) サービスへアクセス ( ログイン操作なし ) - 18 -

詳細 HTTP Artifact バインディング Browser SP IdP SPのコンテンツへアクセスユーザは未認証 Artifact をリダイレクトリ Artifact 生成 ArtifactRequest メッセージ ArtifactResponse メッセージ SAML 認証要求メッセージ を要求 SAML 認証要求 ログイン画面表示 ユーザ認証 ( ユーザ ID/ パスワード ) Artifact をリダイレクトリ アサーションと Artifact を生成 SP のコンテンツ ArtifactRequest メッセージ ArtifactResponse メッセージ SAML 認証応答メッセージ を要求 SAML 認証応答 - 19 -

デモ 1. Google Apps の SAML 認証が HTTP POST バインディングで行われる様子を見てみる 2. LDAP に保存されている NameID を直接いじってみる OpenSSO にはユーザ A でログインし Google Apps にはユーザ B でログインする - 20 -

詳細 シングルログアウトプロファイル SP1 SP2 IdP ログアウト要求メッセージ アサーションを発行した全ての SP にログアウト要求メッセージを送付 ログアウト要求メッセージ Artifact Redirect POST バインディング ログアウト結果送付 ログアウト結果送付 OpenSSO + Google Apps + Liferay + Alfresco のデモで Google Apps からログアウトすると Liferay からもログアウトするが これは SAML のシングルログアウトではない - 21 -

詳細 - メタデータ SAML で SSO を利用するためには あらかじめ CoT の構成 アカウント連携などを行っておく必要がある これらの作業に必要な情報をまとめた XML データをメタデータという メタデータがあれば IdP SP の構築作業が楽になる 例 :Google Apps のメタデータ <EntityDescriptor entityid="google.com" xmlns="urn:oasis:names:tc:saml:2.0:metadata"> <SPSSODescriptor protocolsupportenumeration="urn:oasis:names:tc:saml:2.0:protocol"> <NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified</NameIDFormat> <AssertionConsumerService index="1" Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://www.google.com/a/ ドメイン名 /acs" /> </SPSSODescriptor> </EntityDescriptor> - 22 -

詳細 - アサーションへの XML デジタル署名 アサーションの改竄によるユーザなりすましなどを防ぐために XML デジタル署名を付加する IdP の証明書を SP に登録しておく必要がある - 23 -

参考 Liferay と Alfresco のログアウト OpenSSO(IdP) Session Google Apps(SP) アサーション Liferay 毎回 Cookei の正当性を確認 OpenSSO(IdP) チェック不合格 意図せずログアウト Google Apps Liferay Cookie Cookie ユーザ Cookie Alfresco 初回だけ Cookei の正当性を確認 ユーザ Cookie Alfresco Liferay と Alfresco は Cookie でログインセッションを管理 Google からログアウト (SAML シングルログアウトプロファイル ) ログインしたまま ( キャッシュしているため ) - 24 -

参考文献 LIBERTY ALLIANCE のセミナー資料 最初に読むならこれがおすすめ ( 今回の勉強会資料の元ネタ ) http://wiki.projectliberty.org/images/9/94/080215_japansig_technical_seminar.pdf SAML 仕様の原文 http://www.oasis-open.org/specs/index.php#saml 実システムでの SAML Google Apps: http://code.google.com/intl/ja/apis/apps/sso/saml_reference_implementation.ht ml http://code.google.com/intl/ja/apis/apps/articles/shibboleth2.0.html salesforce http://www.salesforce.com/community/crm-best-practices/itprofessionals/application-development/sso.jsp - 25 -