Статья описывает 1 из компонентов необходимых для работы с External Object. Когда вы создаёте External Data Source то вам необходимо выбрать множество настроек для своего источника, тут мы и рассмотрим детально как настраивать некоторые из них. Рассмотрим 2 базовых типа адаптера: OData.2.0 и Cross-Org.
1. Вступление
2. Connection type
3. Parameters
4. Authentication
Вступление
В окне настройки External Data Source существует множество полей которые помогут вам настроить источник должным образом. То какие поля придётся заполнять зависит от Type(типа адаптера).
Разобьём все эти поля на 3 группы:
- Connection type
- Parameters
- Authentication
Большинство полей не требуют особого объяснения, но на некоторые стоить обратить внимание. Пройдём по каждой группе более подробно.
Connection type
-
External data source
Имя вашего источника, который вы будете видеть в себя в sf user интерфейсе. -
Name
Имя которое вы будете использовать при вызове этого ресурса с помощью API. -
Type
В этом поле вам предлагают выбрать 1 из Salesforce Connect Adapters. Salesforce Connect специальные адаптеры для соединения с внешней системой и доступа к данным. Рассмотри каждый вид доступного адаптера.- OData.2.0(4.0) - использует Open Data Protocol для доступа к данным хранящимся вне sf организации.
- Cross-org - использует Lightning Platform REST API для доступа к данным которые хранятся в другой Salesforce организации.
Parameters
Пройдём по списку параметров для каждого адаптера(типа подключения).
OData.2.0(4.0)
-
URL - адрес по которому будут взяты данные с внешнего сервиса. Например: http//services.example.org/Warehouse.svc
-
Connection Timeout (Seconds) - время ожидания ответа от внешнего сервиса.
-
Writable External Objects - позволяет Lightning platform и пользователям в организации создавать, обновлять и удалять записи external object которые привязаны к внешнему источнику данных. По умолчанию записи External Object являются read only.
-
High Data Volume - при включении позволяет обойти некоторые лимиты на запрос данных от внешнего сервиса. Но при этом включает другие лимиты.
-
Request Row Counts - добавляет к каждому запросу опцию для получения количества записей
-
Enable Search - определяет может ли SOSL и глобальный поиск Salesforce запрашивать external objects записи ассоциированные с текущим внешним хранилищем. Только text, text area, и long text area поля на external objects могут быть запрошены. Если у объекта нет таких полей, то и в результате поиска ничего не вернётся.
-
Format - формат данных который OData источник использует для предоставления данных. Убедитесь что OData источник поддерживает выбранный формат данных.
-
Server Driven Pagination - позволяет внешней системе контролировать поведение разбиения данных на блоки(страницы).
-
Compress Requests - Salesforce отправляет сжатый HTTP запрос на внешнюю систему. Убедитесь что внешний сервис может принимать запросы такого типа. Salesforce автоматически принимает gzip-compressed ответы.
-
Custom Query Option for Salesforce Search - доступно только если вы выбрали OData.2.0 адаптер. Если OData источник заимплементировал free-text-search кастомную опцию поиска, то вы можете ввести параметр по которому будет происходить поиск.
Здесь например показан кастомный параметр в запросе с именем “doSearch” и значения для параметра “Acme”.
http://services.example.org/my.svc/Shippers?
$select=CompanyName, Phone, ShipperID&
$inlinecount=allpages&doSearch=Acme&$top=26
- Special Compatibility - выберите Socrata только если URL определяет Socrata open data endpoint.
Cross-org
-
Connect to - адрес по которому определяется к какой организации подключаться.
-
URL - если вы выбрали Connect to Custom URL, введите login URL для организации источника.
-
API Version - версия API определяется для организации которая выступает источником. Определяет какие объекты, поля, и типы вы можете получить из организации.
Authentication
В обоих случаях, выбрав OData.2.0(4.0) или Cross-org набор полей будет одинаков за исключением что у Cross-org нет No Authentication значения для выбора.
-
Certificate - если вы определяете сертификат, то ваша Sf организация будет предоставлять его каждый раз при двухстороннем SSL соединении с внешней системой. Сертификат используется для цифровой подписи, который подтверждает что запрос, приходит от вашей Salesforce организации.
-
Identity Type - используйте ли вы 1 набор credentials или несколько.
-
Named Principal - указывает на то что вы используйте 1 набор credentials.
-
Per User - указывает на то что вы используйте несколько аккаунтов для доступа к внешней системе. Каждый User имеет свой набор credentials, или вы можете сгруппировать пользователей и дать каждой группе свой набор credentials.
-
Anonymous - если внешняя система не требует аутентификации.
-
-
Authentication protocol - тип аутентификации.
- Password Authentication - введите логи и пароль для доступа к внешней системе.
- OAuth 2.0 тип аутентификации который требует
- Authentication Provider - выбираем одного из провайдеров.
- Scope - определяет набор разрешений для запроса access token. Выбранный auth provider определяет значения которые вы можете выбрать.
- Start Authentication Flow on Save - что бы аутентифицироваться во внешней системе и получить OAuth Token, выберите checkbox. Этот процесс называется OAuth flow. Когда вы нажмёте Save то внешняя система предложит вам залогиниться. После успешного входа, внешний сервис выдаст вам токен для доступа к её данным из saleforce организации. Можете использовать это в случае если вам нужен новый токен.