Loading
Общие сведения о Salesforce Data 360
Настройка взаимосвязи Snowflake Trust для повышения идентификации чистой комнаты
  1. Справка Salesforce
  2. Документы
  3. Data 360

Настройка взаимосвязи Snowflake Trust для повышения идентификации чистой комнаты

Для каждого приглашения к сотрудничеству для сценария использования повышения идентификации выполните обязательную настройку Snowflake, а потом примите приглашение в Data 360. Data 360 тестирует подключение Snowflake автоматически при принятии.

Требуемые версии

Доступно в версиях: Enterprise Edition (домашняя организация)
В Developer Edition невозможно получать или принимать приглашения на сотрудничество.
Требуемые полномочия пользователя
Для создания подключения Snowflake Data Federation в Data 360:

Профиль системного администратора или набор полномочий:

  • Архитектор Data Cloud

Перед началом работы:

  • Завершите планирование среды Snowflake для повышения подлинности.
  • Откройте отложенное приглашение на сотрудничество в Data 360 и запишите эти значения в мастере принятия приглашения на сотрудничество «Чистая комната» — они нужны в следующих этапах настройки:
    • Внешний код — уникальный идентификатор, созданный Data 360 для данного сотрудничества
    • URL-адрес Consumer Salesforce Domain — домен организации Salesforce пользователя

Настройка среды Snowflake

  1. В рабочей таблице Snowflake откройте редактор SQL и выполните данные задачи для настройки контейнеров данных, полномочий и пользователя службы.
    Примечание
    Примечание Данные примеры кода предназначены только для руководства. Протестируйте и проверьте весь код в безопасной среде, прежде чем использовать его в производстве.
  2. Создайте специальную базу данных и схему для этого клиента, чтобы его данные оставались изолированными от других совместных проектов.
    CREATE DATABASE CUSTOMER_DB;
    CREATE SCHEMA CUSTOMER_DB.ENRICHED_OUTPUT;

    Обратите внимание на базы данных и имена схем — вы вводите их в Data 360 при принятии приглашения.

  3. Создайте таблицы вывода.

    Ниже указаны таблицы, в которые записывается задание на пополнение. Определите имена всех столбцов в двойных кавычках для сохранения обращения. Без двойных кавычек Snowflake автоматически добавляет прописные буквы в имена столбцов, что приводит к ошибкам при чтении таблиц Data 360.

    Важно!
    Важно! Определите основной ключ в каждой таблице вывода. Data 360 считывает метаданные основного ключа при обнаружении таблиц, и сотрудничество не может быть активным, если в таблице вывода отсутствует основной ключ. В таблицах электронной почты и телефонов определите основной ключ в столбце значений точки контакта, а не код стороны, поскольку код стороны может повторяться в записях.
    -- 1. Bridge Table: links consumer Individual IDs to your internal IDs
    CREATE OR REPLACE TABLE CUSTOMER_DB.ENRICHED_OUTPUT.PartnerIndBridgeTable (
      "SourceId"            VARCHAR(255),  -- Consumer's Individual ID
      "PartnerIndividualId" VARCHAR(255)   -- Your internal unique identifier
    );
    
    -- 2. Individual Table: enriched name and identity attributes
    CREATE OR REPLACE TABLE CUSTOMER_DB.ENRICHED_OUTPUT.PartnerBoostedIndividualTable (
      "IndividualId"        VARCHAR(255),  -- Matches PartnerIndividualId in bridge table
      "ssot__FirstName__c"  VARCHAR(255),
      "ssot__LastName__c"   VARCHAR(255),
      "EnrichmentTimestamp" TIMESTAMP_NTZ
    );
    
    -- 3. Email Table: enriched email addresses
    CREATE OR REPLACE TABLE CUSTOMER_DB.ENRICHED_OUTPUT.PartnerBoostedEmailTable (
      "PartyId"             VARCHAR(255),  -- Links to IndividualId in table 2
      "EnrichedEmail"       VARCHAR(255),
      "EnrichmentTimestamp" TIMESTAMP_NTZ
    );
    
    -- 4. Phone Table: enriched phone numbers
    CREATE OR REPLACE TABLE CUSTOMER_DB.ENRICHED_OUTPUT.PartnerBoostedPhoneTable (
      "PartyId"             VARCHAR(255),  -- Links to IndividualId in table 2
      "EnrichedPhone"       VARCHAR(50),
      "EnrichmentTimestamp" TIMESTAMP_NTZ
    );
    Примечание
    Примечание Ниже указаны примеры имен таблиц. Используйте фактические имена, указанные в дополнительных метаданных JSON, предоставленных при принятии приглашения. Data 360 использует значения objectApiName в этом JSON для поиска таблиц в схеме Snowflake.
  4. Разверните задание по обогащению и настройте его для нацеливания на схему этого клиента.

    Настройте код задания для чтения из общего доступа к данным Snowflake, создаваемого Data 360 в среде после принятия, выполните разрешающую способность при опознавании по графику удостоверения и запишите обогащенный вывод в созданную базу данных и схему.

    Пока не выполняйте задание — данные пользователя будут доступны в среде Snowflake только после принятия приглашения в Data 360.

    Примечание
    Примечание Если вы используете одну организацию Snowflake для нескольких клиентов, задание пополнения может получить доступ ко всем базам данных в этой организации. Охватите роль выполнения задания строго базой данных и схемой этого клиента и регулярно проверяйте предоставление ролей, чтобы подтвердить отсутствие межклиентского доступа.
  5. Создайте выделенную роль для Data 360.

    Выделенная роль — это именованный набор полномочий, назначаемых пользователю службы OIDC Snowflake.

    CREATE ROLE IF NOT EXISTS DATACLOUD_SF_ROLE;
  6. Предоставьте роли доступ к складу, базе данных и схеме.

    Чтобы просмотреть доступные в организации склады, перейдите в «Администратор» > «Склады» на консоли Snowflake и запишите имя нужного склада. Эти команды предоставляют роли полномочие на использование склада и доступ к базе данных и схеме этого клиента.

    GRANT USAGE ON WAREHOUSE MY_WH TO ROLE DATACLOUD_SF_ROLE;
    GRANT USAGE ON DATABASE CUSTOMER_DB TO ROLE DATACLOUD_SF_ROLE;
    GRANT USAGE ON SCHEMA CUSTOMER_DB.ENRICHED_OUTPUT TO ROLE DATACLOUD_SF_ROLE;

    Замените MY_WH именем склада, CUSTOMER_DB созданной базой данных и ENRICHED_OUTPUT созданной схемой. Обратите внимание на имя склада — введите его в Data 360 при принятии приглашения.

  7. Предоставьте роли полномочие на чтение таблиц результатов.

    Data 360 считывает таблицы обогащенного вывода после выполнения задания обогащения для создания обогащенных DMO в организации пользователя. Эти гранты предоставляют роли SELECT доступ во всех таблицах вывода, как в существующих таблицах, так и в любых таблицах, созданных позже.

    GRANT SELECT ON ALL TABLES IN SCHEMA CUSTOMER_DB.ENRICHED_OUTPUT TO ROLE DATACLOUD_SF_ROLE;
    GRANT SELECT ON FUTURE TABLES IN SCHEMA CUSTOMER_DB.ENRICHED_OUTPUT TO ROLE DATACLOUD_SF_ROLE;
  8. Создайте пользователя службы с помощью Workload Identity Federation (OIDC) Trust.

    Это специальный пользователь Snowflake, используемый Data 360 для подключения к организации Snowflake и чтения расширенных таблиц вывода. В отличие от обычного пользователя, у него нет пароля — вместо этого он доверяет маркерам входа, выданным организацией Salesforce пользователя. Только Data 360, проверенная как организация определенного пользователя, может войти от имени этого пользователя.

    Используйте внешний код и URL-адрес Consumer Salesforce Domain, отмеченные в разделе «Перед началом».

    CREATE OR REPLACE USER sf_oidc_user
      WORKLOAD_IDENTITY =
      (
        TYPE = OIDC
        ISSUER = 'https://yourcompany.my.salesforce.com/services/connectors'
        SUBJECT = 'your-external-id'
        OIDC_AUDIENCE_LIST = ('https://yourcompany.my.salesforce.com')
      )
      TYPE = SERVICE
      DEFAULT_ROLE = DATACLOUD_SF_ROLE;
    • ISSUER — введите URL-адрес домена Consumer Salesforce, за которым следует /services/connectors. Это сообщает Snowflake, какая организация Salesforce может выдавать маркеры входа для этого пользователя. Например, https://yourcompany.my.salesforce.com/services/connectors.
    • SUBJECT — Введите внешний код. Это прикрепляет Trust к конкретному сотрудничеству. Даже если организация Salesforce отправляет маркер, этот маркер не имеет доступа к данным другого клиента.
    • OIDC_AUDIENCE_LIST — введите URL-адрес домена Consumer Salesforce без суффикса пути. Например, https://yourcompany.my.salesforce.com.
    Примечание
    Примечание Создайте пользователя службы — не преобразуйте существующего пользователя. Изменение текущего пользователя Snowflake на сервисного пользователя лишает его возможности интерактивного входа в Snowflake и смешивает его ежедневные полномочия с компьютерным доступом. Данное действие затрудняет аудит организации и ее отзыв. Выделенный пользователь службы сохраняет доступ Data 360 полностью изолированным и легким для удаления. Если вы используете одну организацию Snowflake для нескольких клиентов, добавьте имя клиента в имя пользователя службы во избежание конфликтов, например, Customer1_DC_User.

    Обратите внимание на имя пользователя службы — введите его в Data 360 при принятии приглашения.

  9. Назначьте роль пользователю службы.
    GRANT ROLE DATACLOUD_SF_ROLE TO USER sf_oidc_user;
    Пользователь службы имеет настроенные полномочия.
  10. Прежде чем перейти на Data 360, убедитесь в наличии данных значений из среды Snowflake — введите их в мастере принятия.
    Поле в данных 360 Значение в Snowflake
    URL-адрес организации Snowflake Полный URL-адрес организации Snowflake (например, https://myorg.snowflakecomputing.com)
    Пользователь службы Имя, данное пользователю службы
    Имя хранилища данных Используемое имя склада
    Имя базы данных Имя созданной базы данных
    Имя схемы Имя созданной схемы

Принятие приглашения на сотрудничество в Data 360

  1. Вернитесь в мастер принятия приглашения на сотрудничество «Чистая комната» в Data 360 и выполните данные действия принятия: выберите пространство данных, а потом создайте или выберите соотнесенный шаблон.
  2. В разделе «Взаимосвязь Snowflake Trust» проверьте соответствие значений внешнего кода и URL-адреса домена Salesforce, отображаемых на странице, значениям, использованным в полях SUBJECT и ISSUER при создании пользователя службы в Snowflake.
    Данные значения доступны только для чтения. Данные 360 отображают их здесь, чтобы вы могли убедиться в правильности настройки Snowflake, прежде чем продолжить.
  3. В разделе «Параметры подключения Snowflake» введите значения, отмеченные на этапах настройки.
    • URL-адрес организации Snowflake: полный URL-адрес организации Snowflake, например, https://myorg.snowflakecomputing.com
    • Пользователь службы: имя созданного в Snowflake пользователя службы
    • Имя хранилища данных: имя склада, связанное с пользователем услуги
    • Имя базы данных: база данных, созданная в Snowflake
    • Имя схемы: схема, созданная в Snowflake
  4. Щелкните «Тестирование подключения».

    Data 360 пытается подключиться к организации Snowflake посредством пользователя службы. Если тест не удается, проверьте точное соответствие значений SUBJECT и ISSUER в пользователе службы Snowflake Внешнему коду и URL-адресу домена Salesforce, отображаемому на странице. Также проверьте совместимость организации Snowflake с регионом Data 360 пользователя.

  5. Нажмите «Далее» и примите приглашение.
 
Загрузка
Salesforce Help | Article