> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sync.cdata.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Connecting to Azure Blob Storage

export const CommonAuthSchemeAzurestoragesas = ({siteName = "CData Sync", siteNameShort = "Sync", datasource = "the data source"}) => {
  return <>
      <p>To connect with an Azure shared access signature, set the following properties:</p>
      <ul>
        <li><strong>Auth Scheme:</strong> Select <strong>AzureStorageSAS</strong>.</li>
        <li><strong>Azure Shared Access Signature:</strong> Enter the shared access signature that is associated with the storage account.</li>
      </ul>
      <p>To create an Azure shared access signature:</p>
      <ol>
        <li>Sign in to the <a href="https://portal.azure.com" target="_blank" rel="noopener noreferrer">Azure portal</a> with the credentials for your root account.</li>
        <li>Click <strong>Storage accounts</strong> and select the storage account you want to use.</li>
        <li>Under <strong>Settings</strong>, click <strong>Shared Access Signature</strong>.</li>
        <li>Set the permissions and a date when the token will expire.</li>
        <li>Click <strong>Generate SAS</strong> and copy the token that is generated.</li>
      </ol>
    </>;
};

export const CommonAuthSchemeAccesskey = ({siteName = "CData Sync", siteNameShort = "Sync", datasource = "the data source"}) => {
  return <>
      <p>To connect with an Azure access key, set the following properties:</p>
      <ul>
        <li><strong>Auth Scheme:</strong> Select <strong>Access Key</strong>.</li>
        <li><strong>Azure Access Key:</strong> Enter the access key that is associated with your storage account.</li>
      </ul>
      <p>To retrieve your access key:</p>
      <ol>
        <li>Sign in to the <a href="https://portal.azure.com/" target="_blank" rel="noopener noreferrer">Azure portal</a> with the credentials for your root account.</li>
        <li>Click <strong>Storage accounts</strong> and select the storage account that you want to use.</li>
        <li>Under <strong>Settings</strong>, click <strong>Access keys</strong>. Your storage account name and key are displayed on that page.</li>
      </ol>
    </>;
};

export const CommonAuthSchemeAzureserviceprincipalcert = () => {
  return <>
      <p>To connect with an Azure service principal and client certificate, set the following properties:</p>
      <ul>
        <li><strong>Auth Scheme:</strong> Select <strong>AzureServicePrincipalCert</strong>.</li>
        <li><strong>Azure Tenant:</strong> Enter the Microsoft Online tenant to which you want to connect.</li>
        <li><strong>OAuth Client Id:</strong> Enter the client Id that you were assigned when you registered your application with an OAuth authorization server.</li>
        <li><strong>OAuth JWT Cert:</strong> Enter your Java web tokens (JWT) certificate store.</li>
        <li><strong>OAuth JWT Cert Type:</strong> Enter the type of key store that contains your JWT Certificate. The default type is <strong>PEMKEY_BLOB</strong>.</li>
        <li>(Optional) <strong>OAuth JWT Cert Password:</strong> Enter the password for your OAuth JWT certificate.</li>
        <li>(Optional) <strong>OAuth JWT Cert Subject:</strong> Enter the subject of your OAuth JWT certificate.</li>
      </ul>
      <p>To obtain the OAuth certificate for your application:</p>
      <ol>
        <li>Log in to the <a href="https://portal.azure.com" target="_blank" rel="noopener noreferrer">Azure portal</a>.</li>
        <li>In the left navigation pane, select <strong>All services</strong>. Then, search for and select <strong>App registrations</strong>.</li>
        <li>Click <strong>New registrations</strong>.</li>
        <li>Enter an application name and select <strong>Any Azure AD Directory - Multi Tenant</strong>.</li>
        <li>After you create the application, copy the application (client) Id value that is displayed in the <strong>Overview</strong> section. Use this value as the OAuth client Id.</li>
        <li>Navigate to the <strong>Certificates & Secrets</strong> section and select <strong>Upload certificate</strong>. Then, select the certificate to upload from your local machine.</li>
        <li>Specify the duration and save the client secret. After you save it, the key value is displayed.</li>
        <li>Copy this value because it is displayed only once. You will use this value as the OAuth client secret.</li>
        <li>On the <strong>Authentication</strong> tab, make sure to select <strong>Access tokens (used for implicit flows)</strong>.</li>
      </ol>
    </>;
};

export const CommonAuthSchemeAzureserviceprincipal = () => {
  return <>
      <p>To connect with an Azure service principal and client secret, set the following properties:</p>
      <ul>
        <li><strong>Auth Scheme:</strong> Select <strong>AzureServicePrincipal</strong>.</li>
        <li><strong>Azure Tenant:</strong> Enter the Microsoft Online tenant to which you want to connect.</li>
        <li><strong>OAuth Client Id:</strong> Enter the client Id that you were assigned when you registered your application with an OAuth authorization server.</li>
        <li><strong>OAuth Client Secret:</strong> Enter the client secret that you were assigned when you registered your application with an OAuth authorization server.</li>
      </ul>
      <p>To obtain the OAuth client Id and client secret for your application:</p>
      <ol>
        <li>Log in to the <a href="https://portal.azure.com" target="_blank" rel="noopener noreferrer">Azure portal</a>.</li>
        <li>In the left navigation pane, select <strong>All services</strong>. Then, search for and select <strong>App registrations</strong>.</li>
        <li>Click <strong>New registrations</strong>.</li>
        <li>Enter an application name and select <strong>Any Azure AD Directory - Multi Tenant</strong>.</li>
        <li>After you create the application, copy the application (client) Id value that is displayed in the <strong>Overview</strong> section. Use this value as the OAuth client Id.</li>
        <li>Navigate to the <strong>Certificates & Secrets</strong> section and select <strong>New Client Secret</strong> for the application.</li>
        <li>Specify the duration and save the client secret. After you save it, the key value is displayed.</li>
        <li>Copy this value because it is displayed only once. You will use this value as the OAuth client secret.</li>
        <li>On the <strong>Authentication</strong> tab, make sure to select <strong>Access tokens (used for implicit flows)</strong>.</li>
      </ol>
    </>;
};

export const CommonAuthSchemeAzuremsi = ({siteName = "CData Sync"}) => {
  return <>
      <p>
        To leverage Azure Managed Service Identity (MSI) when {siteName} is running on an Azure
        virtual machine, select <strong>Azure MSI</strong> for <strong>Auth Scheme</strong>. No
        additional properties are required.
      </p>
    </>;
};

export const CommonAuthSchemeAzuread = ({siteName = "CData Sync"}) => {
  return <>
      <p>
        To connect with an Azure Active Directory (AD) user account, select <strong>AzureAD</strong>{' '}
        for <strong>Auth Scheme</strong>. {siteName} provides an embedded OAuth application with
        which to connect, so no additional properties are required.
      </p>
    </>;
};

export const siteName = "CData Sync";

In {siteName}, you can connect to Azure Blob Storage in several ways. Select your authentication method below, then proceed to the relevant section and follow those instructions.

* [**Azure Active Directory**](#azure-active-directory)
* [**Azure Managed Service Identity**](#azure-managed-service-identity)
* [**Azure Service Principal**](#azure-service-principal)
* [**Azure Service Principal Certificate**](#azure-service-principal-certificate)
* [**Azure Access Key**](#azure-access-key)
* [**Azure Shared Access Signature**](#azure-shared-access-signature)

### Azure Active Directory

<CommonAuthSchemeAzuread siteName={siteName} />

After you complete this section, go to *Complete Your Connection* on the connection page to finish setting up the connection.

### Azure Managed Service Identity

<CommonAuthSchemeAzuremsi siteName={siteName} />

After you complete this section, go to *Complete Your Connection* on the connection page to finish setting up the connection.

### Azure Service Principal

<CommonAuthSchemeAzureserviceprincipal siteName={siteName} />

After you complete this section, go to *Complete Your Connection* on the connection page to finish setting up the connection.

### Azure Service Principal Certificate

<CommonAuthSchemeAzureserviceprincipalcert siteName={siteName} />

After you complete this section, go to *Complete Your Connection* on the connection page to finish setting up the connection.

### Azure Access Key

<CommonAuthSchemeAccesskey siteName={siteName} />

After you complete this section, go to *Complete Your Connection* on the connection page to finish setting up the connection.

### Azure Shared Access Signature

<CommonAuthSchemeAzurestoragesas siteName={siteName} />

After you complete this section, go to *Complete Your Connection* on the connection page to finish setting up the connection.
