1. Enabling Sitecore CMP and DAM in SitecoreAI

Enable the DAM connector in an environment deployed to SitecoreAI

To use Sitecore DAM in an environment deployed to SitecoreAI, you must configure and enable the DAM connector.

This walkthrough describes how to:

  1. Configure and enable the DAM connector
  2. Configure a DAM connection
  3. Configure CORS for DAM

Prerequisites

Before you enable the DAM connector in an environment deployed to SitecoreAI, you must have:

Configure and enable the DAM connector in the Deploy app

To configure and enable the DAM connector:

  1. Log in to the Deploy app.

  2. On the navigation pane of the Deploy app, click Projects.

  3. On the Projects page, click the project that contains the environment where you want to enable the DAM connector.

  4. On the project page, click the environment where you want to enable the DAM connector.

  5. On the environment page, click Variables, then click Create variable.

  6. Create the following variables. For each variable, set the Target to CM.

    VariableValueDescription
    Sitecore_ConnectionStrings_DAM_dot_ContentHubClientId={client_id};ClientSecret={client_secret};UserName={username};Password={password};URI={uri};Example: ClientId=App;ClientSecret=a51a8fb6-4f57-1234;UserName=john;Password=hunter2;URI=https://example.com/;The Client ID and Client Secret of the connector's OAuth client.The username and password of the user you created in Content Hub.uri of your Content Hub instance.
    Sitecore_ConnectionStrings_DAM_dot_SearchPageSitecore Content Hub search page URIExample: https://sitecore-contenthub-dam-uri/en-us/sitecore-dam-connect/approved-assetsThe URI for the page that opens the DAM in an IFrame.
    Sitecore_ConnectionStrings_DAM_dot_ExternalRedirectKeySitecore
    SITECORE_AppSettings_damEnabled__defineyesBy default, when you deploy an environment to SitecoreAI, the DAM connector is disabled. To enable the connector, set this value to yes.

Configure a DAM connection

Important

If you don't have a content security policy (CSP), we strongly recommend you create one to guard against cross-site scripting (XSS) and data injection attacks. If you already have a CSP, you need to add the relevant Content Hub instance URLs.

To configure a DAM connection and add your CSP:

  1. Clone the source control repository linked to your SitecoreAI environment.

  2. In the SitecoreAI repository folder, create the following subfolder:

    plaintext
    {Project Repo Name}/authoring/platform/App_Data/Xdts
  3. Open the Xdts subfolder, create a file named Web.config.xdt, and open it for editing. Add the following code, then add your CSP in the value attribute value:

    xml
    <?xml version="1.0" encoding="utf-8"?>
    <configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
        <location path="sitecore">
            <system.webServer>
                <httpProtocol>
                    <customHeaders>
                        <add xdt:Transform="SetAttributes" xdt:Locator="Match(name)" name="Content-Security-Policy" value="{Add your content security policy here}"/>
                    </customHeaders>
                </httpProtocol>
            </system.webServer>
        </location>
    </configuration>

    Ensure that the Content-Security-Policy tag contains the URL of the Content Hub instance (for example, content-hub-url.stylelabs.com), other delivery hostnames (for example, content-hub-url-delivery.stylelabs.cloud), and generated public links (for example, content-hub-url.stylelabs.com:8686).

    Note

    In Content Hub, you can configure different delivery hostnames for public links by using the AssetExtensionDataConfigurationSetting setting.

    If you have configured different hostnames, you must add all the hostnames as sources to the Content-Security-Policy parameter, in the img-src, child-src, and connect-src properties.

  4. Save the file.

  5. To include the web.config file transformation in the SitecoreAI build configuration, navigate to the root folder, and open the xmcloud.build.json file for editing. Add the following properties:

    json
    "transforms": [
        {
            "xdtPath": "/app_data/xdts/web.config.xdt",
            "targetPath": "/web.config"
        }
    ]
    Note

    XM Cloud is now SitecoreAI Some code examples, images, and UI labels may still use XM Cloud while engineering assets are being updated.

  6. In the authoring/platform folder, open the Platform.csproj file and add the following:

    xml
    <ItemGroup>
        <Content Include="App_Data\\\*\*" />
    </ItemGroup>
  7. Commit your changes and push them to the remote repository.

  8. In the Deploy app, create a build and deploy it to your environment.

Configure CORS for DAM

To enable the Content Hub DAM iframe to successfully display in the Content Editor and the Page builder media item picker, you need to add the Pages and environment host name URLs to Content Hub CORS configuration.

To configure CORS for DAM:

  1. On the Sitecore DAM main menu, click Manage, then Settings.

  2. On the Settings page, click PortalConfiguration, then click CORSConfiguration.

  3. In URL field, enter the URL of the Page builder: https://pages.sitecorecloud.io/, then click Add.

  4. In URL field, enter https://, then the environment host name of your SitecoreAI environment, for example: https://my-xmc-environment-host-name.cloud/, then click Add. You can find your environment host name in your environment details.

    Note

    XM Cloud is now SitecoreAI Some code examples, images, and UI labels may still use XM Cloud while engineering assets are being updated.

    You can now display DAM assets in the Content Editor.

If you have suggestions for improving this article, let us know!