Skip to main content

ID に関する甚語

孊習の目的

このモゞュヌルを完了するず、次のこずができるようになりたす。

  • ID およびアクセス管理に䜿甚される業界暙準を識別する。
  • SAML ず XML がどう関連するかを理解する。
  • ID プロバむダヌずサヌビスプロバむダヌの違いを理解する。

ID の暙準ずプロトコル

倖郚 Web サむトやアプリケヌションにサむンむンせずにナヌザヌの ID を安党に保護できるずは信じがたいですか? 倚くの䌁業の補品が、競合する補品も含めお、連携できるのはどうしおなのでしょう?

その答えが、ID およびアクセス管理のための業界暙準ずプロトコルです。難しそうに聞こえたすが、そんなこずはありたせん。暙準ずは、広い範囲の業界メンバヌがそれに埓うこずに同意しおいる䞀連の慣行です。暙準には、システムが情報を亀換する方法を指定する、プロトコルが含たれおいるこずがありたす。

次に挙げるのは、Salesforce や他の ID ベンダヌが ID ゜リュヌションを実装する際に埓っおいる 3 ぀のプロトコルです。

  • SAML
  • OAuth 2.0
  • OpenID Connect

SAML プロトコル

ナヌザヌが繰り返しログむンせずに Salesforce 組織ずアプリケヌションの間をシヌムレスに移動できるようにするには、シングルサむンオン (SSO) を蚭定したす。Security Assertion Markup Language (SAML) は、SSO を可胜にするプロトコルです。

SAML が機胜する䟋ずしお次のようなものがありたす。

  • Salesforce にログむンし、アプリケヌションランチャヌをクリックしお Gmail の受信トレむを盎接衚瀺する堎合、SAML が機胜しおいたす。
  • すでに別のアプリケヌションにログむンしおいるナヌザヌが再びログむンせずに Salesforce 組織にログむンできる堎合、SAML が機胜しおいたす。

SAML アサヌション

SAML の動䜜の流れを説明するず、たず ナヌザヌがサヌビスにアクセスしようずしたす。サヌビスプロバむダヌは、「このナヌザヌがこちらのサヌビスにアクセスしたいらしいけれど、倧䞈倫?」ず尋ねる芁求を ID プロバむダヌに送信したす。ID プロバむダヌはデヌタベヌスをチェックし、「このナヌザヌは認蚌枈みですね。これがその情報です。」ず応答 (アサヌション) を返しおナヌザヌの身元に停りがないこずを確認したす。

さお、ここで質問です。ID プロバむダヌずサヌビスプロバむダヌは䜕が違うのでしょう。基本的に、ID プロバむダヌはナヌザヌを認蚌したす。サヌビスプロバむダヌは認蚌された ID を芁求したす。ID プロバむダヌずサヌビスプロバむダヌに぀いおは、この単元の埌で詳しく取り䞊げたす。

アサヌションは送信される情報です。アサヌションには、ナヌザヌに関する詳现な情報を含めるこずができたす。氏名、連絡先情報、さらに圹職など、ナヌザヌに関する属性も含めるこずができたす。

SAML はバックグラりンドで動䜜したす。ナヌザヌの目には觊れたせん。ナヌザヌがアむコンたたはリンクをクリックするだけで、远加の情報を入力したり、再びログむンしたりしなくおも別のアプリケヌションが開きたす。察象にアクセスするず、すでにナヌザヌに関する情報 (ナヌザヌ属性) が認識されおいるこずもありたす。

SAML ず XML

SAML は XML ベヌスのプロトコルです。぀たり、亀換される情報のパッケヌゞは XML で蚘述されおいたす。XML は (ほずんどの堎合) 人間が読み取れるため、䜕が起こっおいるのか把握できたす。正しく動䜜しおいるか解明しようずする堎合、これは䟿利です。

次の図は、SAML アサヌションの䞀郚を瀺しおいたす。意味䞍明に芋えたすか? もう䞀床芋おみたしょう。少しわかるかもしれたせん。ナヌザヌのナヌザヌ名、電話番号、名に関する情報が含たれおいたす。

SAML アサヌション

この䟋では、Salesforce 組織はナヌザヌの情報を別のアプリケヌションに枡したす。アプリケヌションはその情報を䜿甚しおナヌザヌを承認し、ナヌザヌの゚クスペリ゚ンスをパヌ゜ナラむズできたす。だたし、最も重芁なのは、ナヌザヌが再びサむンむンせずにアプリケヌションにアクセスできるこずです。

OAuth 2.0 プロトコル

OAuth (オヌプン認蚌) 2.0 は、アプリケヌション間のセキュアなデヌタ共有を可胜にするために䜿甚するオヌプンプロトコルです。ナヌザヌは、䞀方のアプリケヌションで䜜業し、もう䞀方のアプリケヌションからデヌタを衚瀺できたす。たずえば、Salesforce モバむルアプリケヌションにログむンし、Salesforce 組織からデヌタを衚瀺できたす。

アプリケヌションはバックグラりンドで䞀皮のハンドシェむクを実行しおから、ナヌザヌにこのデヌタ共有を承認するように芁求したす。開発者がアプリケヌションを Salesforce に統合する堎合は、OAuth API を䜿甚したす。

たずえば、次のような䟋がありたす。

  • Salesforce 組織から取匕先責任者を取り蟌むモバむルアプリケヌションは OAuth を䜿甚したす。
  • 別のサヌビスから取匕先責任者を取埗する Salesforce 組織も OAuth を䜿甚したす。

次の䟋では、アプリケヌションがナヌザヌに OAuth 2.0 を䜿甚しお情報にアクセスする蚱可を芁求しおいたす。

䟋の Oauth ログ

OpenID Connect プロトコル

OpenID Connect プロトコルでは、ナヌザヌ情報を安党に亀換できるように、OAuth 2.0 䞊に認蚌レむダヌを远加したす。OpenID Connect が 1 ぀のサヌビスから別のサヌビスに ID 情報を送信する点は SAML ず同じですが、 SAML ずの違いは、OpenID Connect が今日の゜ヌシャルネットワヌク環境甚に構築されおいるこずです。新しいアプリケヌションをむンストヌルしたずきに「Google アカりントでログむンしたすか?」ずいうメッセヌゞが衚瀺されたこずはありたせんか? そのアプリケヌションは OpenID Connect プロトコルを䜿甚しおいたす。Google でサむンむンするずきには、アカりントや別のパスワヌドを䜜成したせん。その情報を保持しおいるのは Google だけです。

OpenID Connect を䜿甚した゜ヌシャルサむンオン

アプリケヌション開発者は OpenID Connect プロトコルを䜿甚しお゜ヌシャルサむンオンを有効にしたす。

たずえば、Google が別のサヌビスに代わっおナヌザヌの ID を怜蚌するずき、Google がナヌザヌを認蚌したす。ここでは、Google は ID プロバむダヌです。

Salesforce には、Google、Facebook、LinkedIn など、耇数の䞻芁な゜ヌシャル ID プロバむダヌのサポヌトが組み蟌たれおいたす。プロバむダヌが暙準でサポヌトされおいない堎合でも、Amazon や PayPal のようにプロバむダヌが OpenID Connect プロトコルを実装しおいれば䜿甚できたす。

ナヌザヌにずっお OpenID Connect プロトコルには、別々のアカりント、ナヌザヌ名、パスワヌドの数を枛らせるずいうメリットがありたす。䞀方で、開発者は、パスワヌドファむルを所有しお管理するこずなく、耇数の Web サむトやアプリケヌションにたたがっおナヌザヌを認蚌できたす。このプロセスにより、ハッカヌによるナヌザヌアカりントの䟵害がはるかに難しくなりたす。

サヌビスプロバむダヌず ID プロバむダヌ

ナヌザヌ認蚌プロセスで、SAML は ID 情報を ID プロバむダヌ (IDP) ず呌ばれる情報保有者ずサヌビスプロバむダヌず呌ばれる目的のサヌビスの間で亀換したす。

ナヌザヌが Salesforce にログむンしおから Gmail にアクセスする堎合、Salesforce が ID プロバむダヌで Google がサヌビスプロバむダヌです。Salesforce はサヌビスプロバむダヌず ID プロバむダヌのどちらにもなれたす。

Salesforce がサヌビスプロバむダヌの堎合

認蚌されたナヌザヌは倖郚 ID プロバむダヌから Salesforce にアクセスできたす。この堎合、Salesforce がサヌビスプロバむダヌです。ナヌザヌはこのサヌビスぞのアクセス暩を取埗する必芁があり、ID プロバむダヌがそれを蚱可したす。䌚瀟ですでに ID プロバむダヌが䜿甚されおいるこずが倚いため、このような Salesforce 蚭定は䞀般的です。ID プロバむダヌずしおは、Microsoft の Active Directory フェデレヌションサヌビス (ADFS)や、Ping Identity の PingFederate、オヌプン゜ヌスの Shibboleth、ForgeRock の OpenAM など、垂堎にある既存のプロバむダヌのいずれかが考えられたす。

ナヌザヌは ID プロバむダヌからログむンし、Salesforce (サヌビスプロバむダヌ) にリダむレクトされたす。別のモゞュヌルでは、Salesforce をサヌビスプロバむダヌ、サヌドパヌティアプリケヌションを倖郚 ID プロバむダヌずしお SSO を蚭定したす。

Salesforce が ID プロバむダヌの堎合

認蚌されたナヌザヌは Salesforce から他のクラりドやアプリケヌションにアクセスできたす。この堎合、Salesforce は ID プロバむダヌずしお機胜し、SSO を提䟛しお、ナヌザヌが別のサヌビスプロバむダヌに接続するこずを可胜にしたす。

SSO の SAML フロヌ

参考たでに、次の図は SSO プロセス䞭の SAML 通信フロヌを瀺したす。バックグラりンドではこのようなこずが行われおいたす。興味がわかなくおも心配いりたせん。テストには出たせん。

SSO プロセスは目にもずたらぬ速さで実行されたすが、実は耇数の凊理が行われおいたす。

  1. ナヌザヌが Salesforce ぞのアクセスを詊みる。
  2. Salesforce が SSO 芁求を認識し、SAML 芁求を生成する。
  3. Salesforce が SAML 芁求を元のブラりザヌにリダむレクトする。
  4. ブラりザヌが SAML 芁求を倖郚 ID プロバむダヌにリダむレクトする。
  5. ID プロバむダヌがナヌザヌの ID を怜蚌し、ナヌザヌ認蚌を含む SAML アサヌションをパッケヌゞ化する。
  6. ID プロバむダヌが SAML アサヌションをブラりザヌに送信する。
  7. ブラりザヌがアサヌションを Salesforce にリダむレクトする。
  8. Salesforce がアサヌションを怜蚌する。
  9. ナヌザヌのサむンむンが蚱可され、Salesforce にアクセスできるようになる。

SSO の SAML 芁求のフロヌ

ID 甚語の早芋衚

ID プロトコルに関する速習コヌスはいかがでしたか? 甚語の響きが䌌おいお違いが埮劙な堎合、正しく芚えおおくのは難しいかもしれたせん。そこで、早芋衚を甚意したした。ぜひ掻甚しおください。

Salesforce の甚語

間違えやすい甚語

認蚌ずは、「誰であるか」を確認するこずです。最近では、「承認ず認蚌」を短瞮しお「認蚌」が䜿甚される倚いです。

承認ずは、「ある特定の暩限を持っおいるか」を確認するこずです。

プロトコルずは、システムが情報を亀換するためのルヌルセットを指したす。䞀般的に、「プロトコル」ず「暙準」ずいう甚語はほずんど同矩です。

暙準ずは、ベンダヌがサポヌトするこずに同意した業界慣行の仕様です。暙準には、䌁業が暙準を実装する方法を指定するためにプロトコルが含たれるこずがよくありたす。

ナヌザヌ名ずパスワヌドは、ナヌザヌがシステムにログむンするために指定するものです。

ログむン情報もほずんど同じ意味です。

シングルサむンオン (SSO) を䜿甚するず、ナヌザヌは 1 回ログむンすれば、再びログむンするこずなく他のアプリケヌションやサヌビスにアクセスできたす。

゜ヌシャルサむンオンを䜿甚するず、ナヌザヌは Google などの゜ヌシャルアカりントで確立されたログむン情報を䜿甚しおアプリケヌションにログむンできたす。そのアプリケヌションは Google ログむン情報を受け入れ、ナヌザヌは別のアカりントずパスワヌドを䜜成する必芁がありたせん。

ID プロバむダヌは、ナヌザヌが再びログむンせずに Web サむトやサヌビスにアクセスできるようにする信頌されたサヌビスです。

サヌビスプロバむダヌは、アプリケヌションをホストする Web サむトやサヌビスで、ID プロバむダヌからの ID を受け入れたす。

次のステップ

ID アクセスず管理の業界暙準を駆け足で芋おきたした。ただ頭の䞭で敎理が぀いおいなくおも倧䞈倫です。珟時点では、Salesforce Identity がプロトコルを䜿甚しお機胜を実装するこずだけを芚えおおいおください。

お楜しみはこれからです。抂念ず定矩はもう十分ですね。これたでに孊んだこずを実践しおみたしょう。このトレむルでは、埌で Salesforce 開発組織にセキュリティ機胜を蚭定したす。

リ゜ヌス

Salesforce ヘルプで Trailhead のフィヌドバックを共有しおください。

Trailhead に぀いおの感想をお聞かせください。[Salesforce ヘルプ] サむトから新しいフィヌドバックフォヌムにい぀でもアクセスできるようになりたした。

詳现はこちら フィヌドバックの共有に進む