Salesforce as an IDaaS (Identity as a Service) / …...salesforce.com, inc. is included in our...
Transcript of Salesforce as an IDaaS (Identity as a Service) / …...salesforce.com, inc. is included in our...
池部 敦巳
河村 嘉之
Customer Centric Engineering
Salesforce as an IDaaS(Identity as a Service) / Salesforce with IDaaSSalesforceのIDaaSとしての活用とIDaaSとの連携
Forward-Looking Statement
Statement under the Private Securities Litigation Reform Act of 1995:
This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services.
The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year and in our quarterly report on Form 10-Q for the most recent fiscal quarter. These documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our Web site.
Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
本日のアジェンダ
Salesforceの認証と認可Salesforceの認証・認可に関する基礎を理解する
IDaaSIdentity as a Service
Single Sign On (SAML SSO)Salesforceと他のクラウドサービスを一回の認証で使いたい
OpenID Connect普段使うサービスのログイン情報を使ってSalesforceにログインする
ログインのSecurity強化 SalesforceのログインをもっとSecureに行いたい
1
2
3
4
5
Salesforceの認証と認可Salesforceの認証・認可に関する基礎を理解する
認証・認可 概要
フォーム認証
二要素認証
外部サービス(ID Provider)
外部サービス(Service Provider)
代理認証
Single Sign On(Salesforce: IdP)
Single Sign On(Salesforce: SP)
OAuth
OpenIDConnect
フォーム認証
認証方式
• Webブラウザでユーザ名とパスワードを入力する
• 最も基本的な認証方式
• ユーザ名、パスワードなどの情報はSalesforce内にソルト付きハッシュ化されて格納セキュリティ対策
• ログイン可能なIPアドレスの範囲をプロファイル単位で指定
• ログイン可能な時間をプロファイル単位で指定
• パスワードの長さ、含まれる文字、有効期限などを組織・プロファイル単位で指定
代理認証
認証方式
• ユーザの認証を外部サービスで行う
• 外部サービスはSalesforceが指定するWSDLに合わせたインターフェースを実装する必要がある
対象ユーザ
• 対象ユーザは指定されたプロファイルのユーザとなる
• 対象ユーザのパスワード情報はSalesforce上では管理されない
• 対象ユーザのパスワードはSalesforceから変更不可
SAMLによるSingle Sign On
• Salesforceと他のアプリケーションの間で認証を共有する• Salesforceで認証を行い、他のサービスへ再度ログインすることなくアクセスする
• 他のサービスで認証し、Salesforceへ再度ログインすることなくアクセスする
• 認証情報はSAMLと呼ばれるXMLベースの標準仕様に基づいてやりとりされる
• 詳細は後述
OAuth
• ユーザが外部アプリケーションからSalesforceのデータにアクセスする際に、その認可を与える仕組み
• 外部アプリケーションは接続アプリケーションとして管理される
• 認証プロトコル、IPアドレス範囲制限の緩和、モバイルポリシーなどが設定可能
OpenID Connect
• Googleで認証・Facebookで認証のようなサードパーティを認証プロバイダとしてログインする• OAuth 2.0を拡張し、認証+認可+ユーザの属性情報の取得が可能
• Salesforceは、認証プロバイダ・ログイン先として利用可能
• 詳細は後述
いつ何を使う?
SAML OAuth OpenID Connect
Single Sign On ○ ○API Access ○ ○Mobile ○
(Mobile SDK)
○(Mobile SDK)
IDaaSIdentity as a Service
エンタープライズシステムの変化
IDaaS (Identity as a Service)
経費精算
顧客管理
人事情報
ファイル管理
認証
イントラネット
エンタープライズシステムの変化
従来
最近の傾向
認証基盤もクラウドへ
イントラにあったものがクラウドへ移行
IDaaS (Identity as a Service)● シングルサインオン、プロビジョニングなどをクラウド上
で提供するサービス● サブスクリプション形式のライセンス提供で初期費用、
インフラ構築費用、メンテナンス費を抑える
FW
SalesforceもIDaaSとして利用可能
Single Sign On(SAML SSO)Salesforceと他のクラウドサービスを一回の認証で使いたい
Single Sign On のメリット
• 利用者の利便性
• 1度ログインすれば、複数のアプリケーション、サービスを利用可能
• セキュリティ強化
• ログインできるサービスを限定する
• 認証サーバでの認証をワンタイムパスワード、SMS認証などの複数要素認証を組み合わせ強化する
• 他のサービスは認証サーバー以外のサービスでパスワードによる認証を許可しないパスワードによる認証を許可しないサービスには基本的にログイン攻撃が出来なくなる
• 弱いパスワードを利用可能にしておくリスクを排除出来る利用者が多くのサービスのパスワードを適切に管理するのは難しいので、利用するパスワードが減ることはリスク低減になる
Single Sign On (SAML SSO)
認証方式
• SAMLのAssertionをサービス間でやりとりすることにより、ログイン情報を共有する
SSOの構成要素
• Identity Provider (IdP): ここで認証を行うことにより、他のSPへ認証なしでログインすることができる
• Service Provider (SP): IdPで認証された認証情報を元にログインを受け付ける
• SalesforceはIdP、SPになることが可能
• CommunityユーザもSSOを利用可能
IdP-initiated Flow
1. ログイン
2. サービスを選択
IdP SP
3. SAMLアサーションが返る
4. SAMLアサーションを送り込む
5. ログイン状態となる
SP-initiated Flow
IdP SP
4. SAMLアサーションが返る
5. SAMLアサーションを送り込む
6. ログイン状態となる
1.SPのリソースにアクセス
2. IdPのログインページへリダイレクト
3.ログイン
SPはまだログイン状態ではない
IdP (Identity Provider)Salesforceから他のサービスをシームレスに利用する
IdP設定
SalesforceをIdPとして利用するための設定
• My Domainの有効化
• Identity Provider Setup• MyDomainを有効化すると自動的に設定されている
• SPに設定する際に必要な情報、証明書などをここから入手
• Connected Apps• 接続するSPをConnected Appとして設定する
• 権限セット
• 利用可能な権限セットをConnected Appに登録する
• SPを利用したいユーザに権限セットを割り振る
ライセンス
• Salesforce Identity ( http://www.salesforce.com/jp/platform/identity/ )
SP (Service Provider)他のサービスからSalesforceにシームレスに移動する
SP設定
SalesforceをSPとして利用するための設定
• Single Sign On 設定
• SAMLの有効化
• SAML Single Sign On設定
• IdP情報の登録
SPログイン時に存在しないユーザを動的に作成したい
• JIT Provisioningの有効化
SP-initiated Flow時にIdPのログインページに遷移させるためには?
• Identity Provider Login URLを設定
• My Domainの有効化 (推奨)
SPからログアウト時にIdPもログアウトするためには?
• Identity Provider Logout URLにIdPのログアウトURLを指定する
SAMLを使用してOffice 365 からシームレスに
Salesforceにログイン
Demo
OpenID Connect普段使うサービスのログイン情報を使ってSalesforceにログインしたい
OpenID Connect
認証方式• Googleで認証・Facebookで認証のようなサードパーティを認証プロバイダとしてログインする
• OpenID ConnectのID Tokenをサービス間でやりとりすることにより、ログイン情報を共有する
SSOの構成要素
• OpenID Provider: 認証サービスを提供する
• Relying Party(RP): OpenIDによる認証を受け付ける
• SalesforceはOpenID Provider、RPになることが可能
OpenID Connect Flow
OpenID Provider RP
6. ID/アクセストークンの取得
5. RPへリダイレクト
8. ログイン状態となる
1.RPにアクセス
2. OpenID Providerのログインページへリダイレクト
3.ログイン
4.ユーザ情報へのアクセス認可
7. ユーザ情報の取得
OpenID Connect 設定
外部の認証プロバイダを利用してSalesforceにログインするための設定
• 外部サービス側の設定
• 外部サービスの提供する手順に従って作成 (Consumer Key、Consumer Secretを入手)• 認証プロバイダの作成
• 上記で入手したConsumer Key、Consumer Secretを設定
• Registration Handlerクラスを作成し、外部サービスで認証された後にSalesforceでユーザ情報を受け取った時の処理を実装す
る
• ここで作成されたCallback URLを外部サービス側に登録する
• Salesforceログイン時に外部プロバイダでの認証を利用するための設定
• Salesforceユーザ
• My Domainの有効化
• My Domain設定の認証サービスに作成した認証プロバイダを追加
• My DomainのURLでログインした際に外部サービスでログインするボタンが表示される
• Communityユーザ
• コミュニティのLogin & Registration設定のLogin項目に作成した認証プロバイダを追加
• Communityのログインページに外部サービスでログインするボタンが表示される
OpenID Connect を使用してGoogleアカウントからシームレスにSalesforceにログイン
Demo
ログインのSecurity強化SalesforceのログインをもっとSecureに行いたい
2要素認証
2要素認証
2要素認証とは?
システム管理者として、Salesforce 組織の安全を確保することと、ユーザが迅速かつ簡単にログインできるようにすることのバランスをとることは大切
認証に 2 つ目の要素を追加することで組織のセキュリティを強化する
ここで言う2 要素とは次の 2 種類の情報
・ユーザが知っていること (本人のパスワードなど) ・ユーザが所有しているもの (認証アプリケーションがインストールされたモバイルデバイスなど) ※他にはユーザー自身(生体認証)を使用する等がある
ログイン
2要素認証
• TOTP(Time-based One-time Password)の規格に沿って実装されているためSalesforce Authenticator でなくても同じQRコードを読み込ませれば同じキーが生成される
例:Google Authenticator, Microsoft Authenticator等
• Salesforce AuthenticatorではTOTP以外にも転送通知・ロケーションベースの自動検証・確認コードの使用・Lightning Login(後述)といった機能が利用出来る
Google Authenticator Microsoft Authenticator
Salesforce Authenticator 転送通知
Lightning Login
Lightning Login - 概要パスワードを必要としないログイン
Lightning Login - 概要
Lightning Login は2要素認証の採用を後押しする
パスワードを必要としないLightning Loginでログインする。指紋またはPINでログインを確認するために Salesforce Authenticator(モバイルアプリ) を使用してパスワードフリーでログインする。そしてユーザーは、パスワードの不便さから解放される。
(注: Winter’17 では コミュニティでのLightning Loginをサポートしていない)
Lightning Login - セットアップ&登録
X
組織レベル設定(デフォルトON)
ユーザーレベル設定(デフォルトOFF) - プロファイル・権限セット
Lightning Login - 動作
説明
1. ユーザーがLightning Loginする(LLヒントまたはユーザ名のみから)
2. SalesforceはユーザーがLightning Loginの使用を許可されているかどうか検証する。そしてユーザは、Salesforce Authenticator(Toopher)承認ページにリダイレクトされる。
3. Salesforceサーバーはプッシュ通知+指紋/ PINを使用してユーザーを認証するためにToopherサーバーに依頼する
4. Toopherサーバーはユーザーに登録アプリを認証プッシュを要求する
5. ToopherサーバのSalesforce Authenticator(Toopher)承認ページはユーザからの応答を待つ
6. ユーザーのモバイルアプリ上の「承認」押下によりToopherサーバーを更新する
7. SalesforceはユーザーがToopherサーバーで承認されてた後にアクセスを許可する
Lightning Login - 動作
XXXXX• XXXXX
Lightning Login - ログ
登録ログ - ユーザーの管理 -> ID 検証履歴
LL ログイン - ユーザーの管理 → ログイン履歴
LL ログイン - ユーザーの管理 → ID 検証履歴
Lightning Login
Demo
U2F Security Key
U2F Security Key - 概要
U2Fとは
Universal Second Factorの略称。既存の認証方式を導入しているWebサービスなどが、二段階認証を導入する際に用いる方式
利用者は、従来通りのアカウントIDとパスワードによる認証後、U2Fに対応したUSB端末やNFC端末を使う事でログインが可能になる
(Wikipedia より https://ja.wikipedia.org/wiki/FIDO_Alliance)
U2F Security Keyを用いた2要素認証 Salesforceの管理者が携帯電話に依存しない検証方法で(例えばSalesforce AuthenticatorやOTPアプリ)ユーザーに自分の身元を確認できるようにすることが出来る
BYODを許可していない会社や社用携帯電話がスマートフォンではない従来の携帯電話の会社でもセキュアな2要素認証を使用することができる
U2F Security Key - セットアップ&登録
組織レベル設定(デフォルトOFF)
ユーザーレベル設定(デフォルトOFF) - プロファイル・権限セット
U2F Security Key - 動作
XXXXX• XXXXX
U2F Security Key - ログ
U2F - ユーザーの管理 → ID 検証履歴
U2F Security Key - 制限
• MyDomainが有効になっていないと 組織の設定でU2Fを有効化することが出来ない
• U2FはChrome 47以降で動作する(Firefoxでは U2F Extensionを導入することで動作する)
Q&A
アンケートへのご協力のお願い
http://bit.ly/SWTT16_96
48 | ©2016 Salesforce
2問のみです!
付録
リンク集How-Tohttps://developer.salesforce.com/page/IdentityTrailheadhttps://trailhead.salesforce.com/trail/identityInside OpenID Connect on Force.comhttps://developer.salesforce.com/page/Inside_OpenID_Connect_on_Force.comSalesforce.comのOAuth 2.0を掘り下げてみよう
https://developer.salesforce.com/page/JP:Digging_Deeper_into_OAuth_2.0_at_Salesforce.com
TryoutAxiom http://axiomsso.herokuapp.com/OpenID Connect Playgroundhttps://openidconnect.herokuapp.com/SAML Service Providerhttps://samltester.herokuapp.com/
U2F(yubico's site)https://developers.yubico.com/U2F/
Thank Y u