Salesforce 外部のサービスの操作
別のサービスで変更が生した場合に、Salesforce データの更新が必要になることがあります。同様に、Salesforce データの変更に基づいて、Salesforce 外部のサービスのデータを更新する必要がある場合もあります。たとえば、Salesforce で許容されている数より多くの取引先責任者やリードに一括メールを送信する必要があるとします。この場合に、Salesforce 組織の取引先責任者およびリード情報を使用して受信者名およびメールアドレスのリストを作成できる外部のメールサービスを利用できます。
Salesforce プラットフォームで構築されたアプリケーションは、さまざまな方法で Salesforce 外部のサービスに接続できます。次のような操作が可能です。
- 外部サービスに情報を渡すカスタムリンクまたはカスタム数式項目を作成する。
- プラットフォーム API を使用して、Salesforce の内外にデータを転送する。
- Web サービスメソッドを含む Apex クラスを使用する。
Salesforce 外部のサービスのプロビジョニング
アプリケーションが外部サービスにリンクしている場合、アプリケーションをインストールするユーザーがそのサービスを利用するには、サインアップする必要があります。次のいずれかの方法でアクセスを提供します。
- 個人を識別する必要がない、組織内のすべての有効ユーザーによるアクセス
- 個人の ID を識別することが重要なユーザー単位のアクセス
外部サービスへのアクセスを提供する場合、メールアドレス、会社名、Salesforce ユーザー名の使用は回避します。ユーザー名はいずれ変更される可能性があり、メールアドレスや会社名は重複することがあります。
外部サービスのアクセスを提供する場合は、次の推奨事項を参照してください。
- 外部サービスを使用する新規ユーザーの識別には、シングルサインオン (SSO) 方式を使用します。
- カスタムリンクや Web タブなどアプリケーションの各エントリポイントには、パラメーター文字列内にユーザー ID を含めます。外部サービスでユーザー ID を調べ、ユーザー ID が既存のユーザーのものかどうかを検証します。外部サービスで Lightning プラットフォーム API を経由して読み込めるようにパラメーター文字列にセッション ID を含め、このユーザーにアクティブセッションがあるかどうか、および認証されているかどうかを検証します。
- 既存のユーザーに外部サービスを提供します。新規ユーザーの場合は、必須情報を収集する代替ページを表示します。
- 個々のユーザーのパスワードは保存しないでください。明らかなセキュリティ上のリスクに加え、多くの組織では定期的にパスワードがリセットされます。その場合、ユーザーは組織のシステム上のパスワードを更新する必要があります。ユーザー ID とセッション ID を使用してユーザーを認証し識別するように外部サービスを設計することをお勧めします。
- アプリケーションでユーザーセッションが期限切れになった後に非同期の更新が必要な場合は、専用に別個の管理者ユーザーライセンスを用意します。