Salesforceの認証を外部アプリから使う – OpenID Connect編
はじめに みなさん、こんにちは。株式会社セールスフォース・ジャパンでPlatform Specialistをしている塚本と申します。 Salesforceは当然認証機能を持っています。その認証機能をSalesforce外部のアプリケーションで利用することができます。Salesforceという信頼性の高いプラットフォームにユーザ管理と認証を任せることができますし、多要素認証やソーシャルログイン、パスワードレスログインといった認証機能も組み込めます。 今回はSalesforceはWebサービスの認証基盤としても使えるんだぞ、ということでDeveloper Editionで利用できるExternal Identityライセンスを使ってOpenID ConnectでSalesforceの認証を利用するサンプルコードをご紹介します。 免責のお伝えです。本記事は 2024/12/20 時点の画面・提供機能でもって作成しています。その後の更新等で画面が変わっていたり機能が追加されている場合もあります。あらかじめご了承ください。最新情報については Help ページを参照いただきますよう、よろしくお願いいたします。 当サイトでは、最新かつ正確な情報の掲載を努めておりますが、正確性や安全性、効果等を保証するものではありません。本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。また、当サイトの掲載内容によって損害等が生じた場合は、一切の責任を負いかねますので、ご利用の際はヘルプやリファレンスをご参照の上、お手元で十分検証をいただいたのち導入についてご判断くださいますようお願いいたします。 Salesforce Customer Identityを統合認証として採用するメリット Salesforceを外部アプリケーションの認証で使うためのライセンスとしてはCustomer Identityがあります。Customer Identityは製品名であり、Salesforce組織の中のライセンスとしては External Identity がそれにあたります。Customer Identity はExperience Cloudの機能から認証機能のみを取り出した製品です。「認証機能のみ」とは言ってもユーザー管理に関する機能全般使えますし、カスタムオブジェクトも10個(内、8個はユーザー管理に関わるものに限定)使えますので、ユーザー管理ポータルサイトも運用可能です。 一般的な統合認証のメリット以外で、Salesforceを外部アプリケーションの統合認証として使うことのメリットは以下となります。 CRMであるSalesforce Platformで外部ユーザの認証・管理を行うことで顧客情報管理とダイレクトに紐づいたユーザー管理ができる ユーザー管理プロセスをSalesforce Platformで実装できる Experience Cloudのビルダーを活用できるのでUI含めてノーコード・ローコードで実装できる また、Experience CloudはCustomer Identityの機能を内包していますので、Experience Cloudサイトを既に運用されている場合、追加でCustomer Identityを契約しなくてもExperience Cloudユーザーを外部アプリケーションの認証で使うことができます。 Salesforceの設定 接続アプリケーション作成 接続アプリケーションを作ってOpenIDプロバイダーとしての設定をします。(「設定」-「アプリケーションマネージャ」-「新規接続アプリケーション」) “OAuth 設定の有効化”: 有効(チェック) “コールバックURL” : http://localhost:5000/callback “選択したOAuth範囲” : “一意のユーザー識別子にアクセス(openid)” , “ID URL サービスにアクセス(id, […]
Salesforceの認証を外部アプリから使う – OpenID Connect編 Read More »









