Azure Active Directory Connector for CData Sync

Build 22.0.8509
  • Azure Active Directory
    • Establishing a Connection
    • Advanced Features
      • SSL Configuration
      • Firewall and Proxy
    • Data Model
      • Tables
        • Applications
        • Devices
        • Domains
        • Groups
        • Users
      • Views
        • AdministrativeUnitMembers
        • AdministrativeUnits
        • Contacts
        • Contracts
        • DeviceRegisteredOwners
        • DeviceRegisteredUsers
        • DirectoryAudits
        • DirectoryRoleMembers
        • DirectoryRoles
        • DirectoryRoleTemplates
        • GroupApplicationRoleAssignments
        • GroupMembers
        • Organization
        • RoleAssignments
        • RoleDefinitions
        • SignIns
        • UserApplicationRoleAssignments
      • Data Type Mapping
    • Connection String Options
      • Authentication
        • AuthScheme
      • Azure Authentication
        • AzureTenant
        • AzureEnvironment
      • OAuth
        • OAuthClientId
        • OAuthClientSecret
        • OAuthGrantType
      • JWT OAuth
        • OAuthJWTCert
        • OAuthJWTCertType
        • OAuthJWTCertPassword
        • OAuthJWTCertSubject
        • OAuthJWTIssuer
        • OAuthJWTSubject
      • SSL
        • SSLServerCert
      • Firewall
        • FirewallType
        • FirewallServer
        • FirewallPort
        • FirewallUser
        • FirewallPassword
      • Proxy
        • ProxyAutoDetect
        • ProxyServer
        • ProxyPort
        • ProxyAuthScheme
        • ProxyUser
        • ProxyPassword
        • ProxySSLType
        • ProxyExceptions
      • Logging
        • LogModules
      • Schema
        • Location
        • BrowsableSchemas
        • Tables
        • Views
      • Miscellaneous
        • MaxRows
        • Other
        • PseudoColumns
        • Timeout
        • UserDefinedViews

Azure Active Directory Connector for CData Sync

Overview

The CData Sync App provides a straightforward way to continuously pipeline your Azure Active Directory data to any database, data lake, or data warehouse, making it easily available for Analytics, Reporting, AI, and Machine Learning.

The Azure Active Directory connector can be used from the CData Sync application to pull data from Azure Active Directory and move it to any of the supported destinations.

Azure Active Directory Connector for CData Sync

Establishing a Connection

Create a connection to Azure Active Directory by navigating to the Connections page in the Sync App application and selecting the corresponding icon in the Add Connections panel. If the Azure Active Directory icon is not available, click the Add More icon to download and install the Azure Active Directory connector from the CData site.

Required properties are listed under the Settings tab. The Advanced tab lists connection properties that are not typically required.

Authenticating to Azure Active Directory

Azure AD

Azure AD is a connection type that leverages OAuth to authenticate. OAuth requires the authenticating user to interact with Azure Active Directory using an internet browser. The Sync App facilitates this in several ways as described below. Set your AuthScheme to AzureAD. All AzureAD flows assume that you have done so.

Desktop Applications

CData provides an embedded OAuth application that simplifies OAuth desktop Authentication. Alternatively, you can create a custom OAuth application. See Creating a Custom AzureAD App for information about creating custom applications and reasons for doing so.

For authentication, the only difference between the two methods is that you must set two additional connection properties when using custom OAuth applications.

After setting the following connection properties, you are ready to connect:

  • OAuthClientId: (custom applications only) Set this to the client Id in your application settings.
  • OAuthClientSecret: (custom applications only) Set this to the client secret in your application settings.
  • CallbackURL: Set this to the Redirect URL in your application settings.

When you connect the Sync App opens the OAuth endpoint in your default browser. Log in and grant permissions to the application.

Web Applications

When connecting via a Web application, you need to register a custom OAuth app with Azure Active Directory. See Creating a Custom AzureAD App. You can then use the Sync App to get and manage the OAuth token values. Get an OAuth Access Token

Set one of the following connection properties groups depending on the authentication type to obtain the OAuthAccessToken:

  1. Authenticating using a Client Secret
    • OAuthClientId: Set this to the client Id in your app settings.
    • OAuthClientSecret: Set this to the client secret in your app settings.
  2. Authenticating using a Certificate
    • OAuthClientId: Set this to the client Id in your app settings.
    • OAuthJWTCert: Set this to the JWT Certificate store.
    • OAuthJWTCertType: Set this to the type of the certificate store specified by OAuthJWTCert.

You can then call stored procedures to complete the OAuth exchange:

  1. Call the GetOAuthAuthorizationURL stored procedure. Set the AuthMode input to WEB and set the CallbackURL input to the Redirect URI you specified in your app settings. If necessary, set the Permissions parameter to request custom permissions.

    The stored procedure returns the URL to the OAuth endpoint.

  2. Open the URL, log in, and authorize the application. You are redirected back to the callback URL.
  3. Call the GetOAuthAccessToken stored procedure. Set the AuthMode input to WEB. Set the Verifier input to the "code" parameter in the query string of the callback URL. If necessary, set the Permissions parameter to request custom permissions.

To connect to data, set the OAuthAccessToken connection property to the access token returned by the stored procedure. When the access token expires after ExpiresIn seconds, call GetOAuthAccessToken again to obtain a new access token.

Admin Consent

Admin consent refers to when the Admin for an Azure Active Directory tenant grants permissions to an application which requires an admin to consent to the use case. The embedded app within the CData Sync App, contains no permissions that require admin consent. Therefore, this information applies only to custom applications.

Admin Consent Permissions

When creating a new AzureAD app in the Azure Portal, you must specify which permissions the app will require. Some permissions may be marked as "Admin Consent Required". For example, all Groups permissions require Admin Consent. If your app requires admin consent, there are a couple of ways this can be done.

The easiest way to grant admin consent is to just have an admin log into portal.azure.com and navigate to the app you have created in App Registrations. Under API Permissions, click Grant Consent for your app to have permissions on the tenant under which it was created.

If your organization has multiple tenants or you need to grant application permissions for other tenants outside your organization, use the GetAdminConsentURL stored procedure to generate the Admin Authorization URL. Unlike the GetOAuthAuthorizationURL, there will be no important information returned from this endpoint. After the OAuth application is successfully authorized, it returns a Boolean indicating that permissions have been granted.

After the administrator has approved the OAuth Application, you can continue to authenticate.

Client Credentials

Client credentials refers to a flow in OAuth where there is no direct user authentication taking place. Instead, credentials are created for just the app itself. All tasks taken by the app are done without a default user context. This makes the authentication flow a bit different from standard.

Client OAuth Flow

All permissions related to the client oauth flow require admin consent. This means the app embedded with the CData Sync App cannot be used in the client oauth flow. You must create your own OAuth app in order to use client credentials. See Creating a Custom AzureAD App for more details.

In your App Registration in portal.azure.com, navigate to API Permissions and select the Microsoft Graph permissions. There are two distinct sets of permissions - Delegated and Application permissions. The permissions used during client credential authentication are under Application Permissions. Select the permissions you require for your integration.

You are ready to connect after setting one of the connection properties groups depending on the authentication type.

  1. Authenticating using a Client Secret
    • InitiateOAuth: Set this to GETANDREFRESH. You can use InitiateOAuth to avoid repeating the OAuth exchange and manually setting the OAuthAccessToken.
    • AzureTenant: Set this to the tenant you wish to connect to.
    • OAuthGrantType: Set this to CLIENT.
    • OAuthClientId: Set this to the client Id in your app settings.
    • OAuthClientSecret: Set this to the client secret in your app settings.
  2. Authenticating using a Certificate
    • InitiateOAuth: Set this to GETANDREFRESH. You can use InitiateOAuth to avoid repeating the OAuth exchange and manually setting the OAuthAccessToken.
    • AzureTenant: Set this to the tenant you wish to connect to.
    • OAuthGrantType: Set this to CLIENT.
    • OAuthClientId: Set this to the client Id in your app settings.
    • OAuthJWTCert: Set this to the JWT Certificate store.
    • OAuthJWTCertType: Set this to the type of the certificate store specified by OAuthJWTCert.

Authentication with client credentials takes place automatically like any other connection, except there is no window opened prompting the user. Because there is no user context, there is no need for a browser popup. Connections will take place and be handled internally.

Azure Service Principal

Azure Service Principal is a connection type that goes through OAuth. Set your AuthScheme to AzureServicePrincipal. The authentication as an Azure Service Principal is handled via the OAuth Client Credentials flow, and it does not involve direct user authentication. Instead, credentials are created for just the app itself. All tasks taken by the app are done without a default user context, but based on the assigned roles. The application access to the resources is controlled through the assigned roles' permissions.

Note: You must create a custom application prior to assigning a role. See Creating a Custom AzureAD App for more information.

When authenticating using an Azure Service Principal, you must register an application with an Azure AD tenant. Follow the steps below to create a new service principal that can be used with the role-based access control.

Assign a role to the application

To access resources in your subscription, you must assign a role to the application.

  1. Open the Subscriptions page by searching and selecting the Subscriptions service from the search bar.
  2. Select the particular subscription to assign the application to.
  3. Open the Access control (IAM) and select Add > Add role assignment to open the Add role assignment page.
  4. Select Owner as the role to assign to your created Azure AD app.

Complete the Authentication

You are ready to connect after setting one of the below connection properties groups, depending on the configured app authentication (client secret or certificate).

In both methods

Before choosing client secret or certicate authentication, follow these steps then continue to the relevant section below:

  1. AuthScheme: Set this to the AzureServicePrincipal in your app settings.
  2. InitiateOAuth: Set this to GETANDREFRESH. You can use InitiateOAuth to avoid repeating the OAuth exchange and manually setting the OAuthAccessToken.
  3. AzureTenant: Set this to the tenant you wish to connect to.
  4. OAuthClientId: Set this to the client Id in your app settings.
Authenticating using a Client Secret

Continue with the following:

  1. OAuthClientId: Set this to the client Id in your app settings.
  2. OAuthClientSecret: Set this to the client secret in your app settings.

Authenticating using a Certificate

Continue with the following:

  1. OAuthJWTCert: Set this to the JWT Certificate store.
  2. OAuthJWTCertType: Set this to the type of the certificate store specified by OAuthJWTCert.

MSI

If you are running Azure Active Directory on an Azure VM, you can leverage Managed Service Identity (MSI) credentials to connect:

  • AuthScheme: Set this to AzureMSI.

The MSI credentials are automatically obtained for authentication.

Azure Active Directory Connector for CData Sync

Advanced Features

This section details a selection of advanced features of the Azure Active Directory Sync App.

User Defined Views

The Sync App allows you to define virtual tables, called user defined views, whose contents are decided by a pre-configured query. These views are useful when you cannot directly control queries being issued to the drivers. See User Defined Views for an overview of creating and configuring custom views.

SSL Configuration

Use SSL Configuration to adjust how Sync App handles TLS/SSL certificate negotiations. You can choose from various certificate formats; see the SSLServerCert property under "Connection String Options" for more information.

Firewall and Proxy

Configure the Sync App for compliance with Firewall and Proxy, including Windows proxies and HTTP proxies. You can also set up tunnel connections.

Query Processing

The Sync App offloads as much of the SELECT statement processing as possible to Azure Active Directory and then processes the rest of the query in memory (client-side).

See Query Processing for more information.

Logging

See Logging for an overview of configuration settings that can be used to refine CData logging. For basic logging, you only need to set two connection properties, but there are numerous features that support more refined logging, where you can select subsets of information to be logged using the LogModules connection property.

Azure Active Directory Connector for CData Sync

SSL Configuration

Customizing the SSL Configuration

By default, the Sync App attempts to negotiate SSL/TLS by checking the server's certificate against the system's trusted certificate store.

To specify another certificate, see the SSLServerCert property for the available formats to do so.

Azure Active Directory Connector for CData Sync

Firewall and Proxy

Connecting Through a Firewall or Proxy

HTTP Proxies

To connect through the Windows system proxy, you do not need to set any additional connection properties. To connect to other proxies, set ProxyAutoDetect to false.

In addition, to authenticate to an HTTP proxy, set ProxyAuthScheme, ProxyUser, and ProxyPassword, in addition to ProxyServer and ProxyPort.

Other Proxies

Set the following properties:

  • To use a proxy-based firewall, set FirewallType, FirewallServer, and FirewallPort.
  • To tunnel the connection, set FirewallType to TUNNEL.
  • To authenticate, specify FirewallUser and FirewallPassword.
  • To authenticate to a SOCKS proxy, additionally set FirewallType to SOCKS5.

Azure Active Directory Connector for CData Sync

Data Model

Overview

This section shows the available API objects and provides more information on executing SQL to Azure Active Directory APIs.

Key Features

  • The Sync App models Azure Active Directory entities like device registered owners and role assignments as relational views, and entities like devices, domains, and groups as relational tables, allowing you to write SQL to query Azure Active Directory data.
  • Stored procedures allow you to execute operations to Azure Active Directory, including retrieving the access token and keeping it refreshed in OAuth 2.0.
  • Live connectivity to these objects means any changes to your Azure Active Directory account are immediately reflected when using the Sync App.

Views

Views are statically defined to model entities such as AdministrativeUnitMembers, AdministrativeUnits, and Contacts.

Stored Procedures

Stored Procedures are function-like interfaces to Azure Active Directory. They can be used to modify information in Azure Active Directory.

Azure Active Directory Connector for CData Sync

Tables

The Sync App models the data in Azure Active Directory into a list of tables that can be queried using standard SQL statements.

Generally, querying Azure Active Directory tables is the same as querying a table in a relational database. Sometimes there are special cases, for example, including a certain column in the WHERE clause might be required to get data for certain columns in the table. This is typically needed for situations where a separate request must be made for each row to get certain columns. These types of situations are clearly documented at the top of the table page linked below.

Azure Active Directory Connector for CData Sync Tables

Name Description
Applications Retrieves all applications for the authenticated user.
Devices Retrieves all Devices for the authenticated user.
Domains Retrieves all Domains for the authenticated user.
Groups Retrieves all Azure Active Directory (Azure AD) groups, which can be Office 365 groups, or security groups.
Users Retrieves all Azure AD user accounts within the authenticated permissions.

Azure Active Directory Connector for CData Sync

Applications

Retrieves all applications for the authenticated user.

Table Specific Information

Select

You can query Applications by specifying an Id or selecting all:

SELECT * FROM Applications WHERE Id = '037c5534-1059-4c71-9f1c-a9b887e34b03'

Select a certain column from the entity and filter by that column:

SELECT Id FROM Applications WHERE Id LIKE '%037c5534-1059-4c71-9f1c-a9b887e34b03%'

Update

To update a Applications record you need to specify the Id in WHERE clause.

UPDATE Applications SET displayName = 'Test' WHERE Id = '037c5534-1059-4c71-9f1c-a9b887e34b03'

Columns

Name Type ReadOnly Description
id [KEY] String False

The id of the application.

addIns String False

The addIns of the application.

api_acceptMappedClaims Bool False

The api_acceptMappedClaims of the application.

api_knownClientApplications String False

The api_knownClientApplications of the application.

api_oauth2PermissionScopes String False

The api_oauth2PermissionScopes of the application.

api_preAuthorizedApplications String False

The api_preAuthorizedApplications of the application.

api_requestedAccessTokenVersion Int False

The api_requestedAccessTokenVersion of the application.

appId String False

The appId of the application.

applicationTemplateId String False

The applicationTemplateId of the application.

appRoles String False

The appRoles of the application.

certification_certificationDetailsUrl String False

The certification_certificationDetailsUrl of the application.

certification_certificationExpirationDateTime Datetime False

The certification_certificationExpirationDateTime of the application.

certification_isCertifiedByMicrosoft Bool False

The certification_isCertifiedByMicrosoft of the application.

certification_isPublisherAttested Bool False

The certification_isPublisherAttested of the application.

certification_lastCertificationDateTime Datetime False

The certification_lastCertificationDateTime of the application.

createdDateTime Datetime False

The createdDateTime of the application.

defaultRedirectUri String False

The defaultRedirectUri of the application.

description String False

The description of the application.

disabledByMicrosoftStatus String False

The disabledByMicrosoftStatus of the application.

displayName String False

The displayName of the application.

groupMembershipClaims String False

The groupMembershipClaims of the application.

identifierUris String False

The identifierUris of the application.

info_logoUrl String False

The info_logoUrl of the application.

info_marketingUrl String False

The info_marketingUrl of the application.

info_privacyStatementUrl String False

The info_privacyStatementUrl of the application.

info_supportUrl String False

The info_supportUrl of the application.

info_termsOfServiceUrl String False

The info_termsOfServiceUrl of the application.

isDeviceOnlyAuthSupported Bool False

The isDeviceOnlyAuthSupported of the application.

isFallbackPublicClient Bool False

The isFallbackPublicClient of the application.

keyCredentials String False

The keyCredentials of the application.

logo String False

The logo of the application.

notes String False

The notes of the application.

oauth2RequirePostResponse Bool False

The oauth2RequirePostResponse of the application.

optionalClaims_accessToken String False

The optionalClaims_accessToken of the application.

optionalClaims_idToken String False

The optionalClaims_idToken of the application.

optionalClaims_saml2Token String False

The optionalClaims_saml2Token of the application.

parentalControlSettings_countriesBlockedForMinors String False

The parentalControlSettings_countriesBlockedForMinors of the application.

parentalControlSettings_legalAgeGroupRule String False

The parentalControlSettings_legalAgeGroupRule of the application.

passwordCredentials String False

The passwordCredentials of the application.

publicClient_redirectUris String False

The publicClient_redirectUris of the application.

publisherDomain String False

The publisherDomain of the application.

requiredResourceAccess String False

The requiredResourceAccess of the application.

samlMetadataUrl String False

The samlMetadataUrl of the application.

serviceManagementReference String False

The serviceManagementReference of the application.

signInAudience String False

The signInAudience of the application.

spa_redirectUris String False

The spa_redirectUris of the application.

tags String False

The tags of the application.

tokenEncryptionKeyId String False

The tokenEncryptionKeyId of the application.

verifiedPublisher_addedDateTime Datetime False

The verifiedPublisher_addedDateTime of the application.

verifiedPublisher_displayName String False

The verifiedPublisher_displayName of the application.

verifiedPublisher_verifiedPublisherId String False

The verifiedPublisher_verifiedPublisherId of the application.

web_homePageUrl String False

The web_homePageUrl of the application.

web_implicitGrantSettings_enableAccessTokenIssuance Bool False

The web_implicitGrantSettings_enableAccessTokenIssuance of the application.

web_implicitGrantSettings_enableIdTokenIssuance Bool False

The web_implicitGrantSettings_enableIdTokenIssuance of the application.

web_logoutUrl String False

The web_logoutUrl of the application.

web_redirectUris String False

The web_redirectUris of the application.

Azure Active Directory Connector for CData Sync

Devices

Retrieves all Devices for the authenticated user.

Table Specific Information

Select

You can query Devices by specifying an Id or selecting all:

SELECT * FROM Devices WHERE Id = '2b9c0347-9640-4ba4-bd2d-50965fb026e7'

Select a certain column from the entity and filter by that column:

SELECT * FROM Devices WHERE DisplayName LIKE '%Desk%'

Update

To update a Device record you need to specify the Id in WHERE clause.

UPDATE Devices SET OperatingSystemVersion = 10.0.13439.0 WHERE Id = '6c32edb5-7f28-41f8-9965-f3f9a1718fde'

Delete

To delete a Device record, you need to specify the Id in WHERE clause.

DELETE FROM Devices WHERE Id = '6c32edb5-7f28-41f8-9965-f3f9a1718fde'

GetDeleted

Retrieve recently deleted devices. Deleted devices remain available for up to 30 days.

GETDELETED FROM Devices

Columns

Name Type ReadOnly Description
id [KEY] String False

The Id of the device.

deletedDateTime Datetime False

The datetime when the device was deleted.

accountEnabled Bool False

Indicator if device is account enabled.

alternativeSecurityIds String False

The alternativeSecurityIds of the device.

approximateLastSignInDateTime Datetime False

The approximateLastSignInDateTime of the device.

complianceExpirationDateTime Datetime False

The complianceExpirationDateTime of the device.

deviceId String False

The deviceId of the device.

deviceMetadata String False

The deviceMetadata of the device.

deviceVersion Int False

The deviceVersion of the device.

displayName String False

The displayName of the device.

isCompliant Bool False

Indicator if device is compliant.

isManaged Bool False

Indicator if device is managed.

mdmAppId String False

The mdmAppId of the device.

onPremisesLastSyncDateTime Datetime False

The onPremisesLastSyncDateTime of the device.

onPremisesSyncEnabled Bool False

Indicator if device is on premises sync enabled.

operatingSystem String False

The operatingSystem of the device.

operatingSystemVersion String False

The operatingSystemVersion of the device.

physicalIds String False

The physicalIds of the device.

profileType String False

The profileType of the device.

systemLabels String False

The systemLabels of the device.

trustType String False

The trustType of the device.

Azure Active Directory Connector for CData Sync

Domains

Retrieves all Domains for the authenticated user.

Table Specific Information

Select

You can query Domains by specifying an Id or selecting all:

SELECT * FROM Domains WHERE Id = 'rssbus.cn'

Select a certain column from the entity and filter by that column:

SELECT Id FROM Domains WHERE Id LIKE '%rssbus%'

Insert

Specify an Id in order to create a new Domain, the Id should be the name of the new Domain:

INSERT INTO Calendars (Name) VALUES ('cdata.com')

Update

To update a Domain record you need to specify the Id in WHERE clause.

UPDATE Domains SET passwordNotificationWindowInDays = 14 WHERE Id = 'cdata.com'

Delete

To delete a Domain record, you need to specify the Id in WHERE clause.

DELETE FROM Domains WHERE Id = 'cdata.com'

Columns

Name Type ReadOnly Description
id [KEY] String False

The id of the domain.

authenticationType String False

The authenticationType of the domain.

availabilityStatus String False

The availabilityStatus of the domain.

isAdminManaged Bool False

Indicator if domain is admin managed.

isDefault Bool False

Indicator if domain is default.

isInitial Bool False

Indicator if domain is initial.

isRoot Bool False

Indicator if domain is root.

isVerified Bool False

Indicator if domain is verified.

passwordNotificationWindowInDays Int False

The passwordNotificationWindowInDays of the domain.

passwordValidityPeriodInDays Int False

The passwordValidityPeriodInDays of the domain.

state_lastActionDateTime Datetime False

The lastActionDateTime of the state.

state_operation String False

The operation of the state.

state_status String False

The status of the state.

supportedServices String False

The supported services of the domain.

Azure Active Directory Connector for CData Sync

Groups

Retrieves all Azure Active Directory (Azure AD) groups, which can be Office 365 groups, or security groups.

Table Specific Information

Groups require Administrator permissions. To work with them, you must create your own custom OAuth App and set the appropriate OAuthClientId and OAuthClientSecret. In this app, you must configure it to request the Group.Read.All and the Group.ReadWrite.All permissions. This can be done at https://apps.dev.microsoft.com, or in the App Registrations panel at http://portal.azure.com. See Creating a Custom AzureAD App for more details on creating a custom app.

To authorize Groups permissions, an administrator must grant the Groups permissions for your organization at large. This can be done via the administrator authorization endpoint. Simply have the administrator grant permissions. Then run the OAuth authorization as normal afterwards.

Note that if your organization has multiple tenants, you may replace the /common/ in the url with the tenant Id to indicate which tenant to grant permissions for.

Select

Retrieve all groups, specify a GroupId (Id), or simply filter by a certain column:

SELECT * FROM Groups WHERE Id = '029b15a8-dfd1-460e-83b6-262a75328c13'
SELECT Id, Description, DisplayName FROM Groups WHERE Name = 'test'

Insert

The following are required to create a new Security Group:

INSERT INTO Groups (DisplayName, MailEnabled, MailNickname, SecurityEnabled) VALUES ('Test group', false, 'test', true)

Update

To update a group record you need to specify the Id in WHERE clause.

UPDATE Groups SET Description='updated description from api' WHERE Id = 'bc48eaf7-0dc6-45d1-b17a-5b5397466ee1'

Delete

To delete a group record, you need to specify the Id in WHERE clause.

DELETE FROM Groups WHERE Id = 'bc48eaf7-0dc6-45d1-b17a-5b5397466ee1'

GetDeleted

Retrieve recently deleted groups. Deleted groups remain available for up to 30 days.

GETDELETED FROM Groups

Columns

Name Type ReadOnly Description
id [KEY] String False

The Id of the group.

deletedDateTime Datetime False

The datetime when the group was deleted.

allowExternalSenders Bool False

The indicator showing if external senders should be allowed or not.

assignedLabels String False

The assigned labels of the group.

assignedLicenses String False

The assigned licenses of the group.

autoSubscribeNewMembers Bool False

The indicator showing if new members should be autosubscribed.

classification String False

The classification of the group.

createdDateTime Datetime False

The created DateTime of the group.

description String False

The description of the group.

displayName String False

The display name of the group.

expirationDateTime Datetime False

The expiration datetime of the group.

groupTypes String False

The types of the group.

hasMembersWithLicenseErrors Bool False

Indicator if there are members with license error.

hideFromAddressLists Bool False

Whether or not to hide the group from address lists.

hideFromOutlookClients Bool False

Whether or not to hide the group from Outlook Clients.

isArchived Bool False

Indicator if group is archived.

isAssignableToRole Bool False

Indicator if group is assignable to role.

isSubscribedByMail Bool False

Indicator if group is subscribed by email.

licenseProcessingState String False

The license processing state of the group.

mail String False

The mail of the group.

mailEnabled Bool False

Indicator if mail is enabled in the group.

mailNickname String False

The mail nickname of the group.

membershipRule String False

The membership rule of the group.

membershipRuleProcessingState String False

The membership rule processing state of the group.

onPremisesDomainName String False

The Domain Name of the group.

onPremisesLastSyncDateTime Datetime False

The LastSync DateTime of the group.

onPremisesProvisioningErrors String False

The provisioning errors of the group.

onPremisesSamAccountName String False

The Sam Account Name of the group.

onPremisesSecurityIdentifier String False

The security identifier of the group.

onPremisesSyncEnabled Bool False

Indicator if sync is enabled in the group.

preferredDataLocation String False

The preferred data location of the group.

preferredLanguage String False

Preferred language in the group.

proxyAddresses String False

The proxy addresses of the group.

renewedDateTime Datetime False

The renewed DateTime of the group.

securityEnabled Bool False

Indicator if security is enabled in the group.

securityIdentifier String False

The security identifier of the group.

theme String False

The theme of the group.

unseenCount Int False

The unseen count of the group.

visibility String False

The visibility of the group.

Azure Active Directory Connector for CData Sync

Users

Retrieves all Azure AD user accounts within the authenticated permissions.

Table Specific Information

Select

Query the Users table. The Sync App will use the Azure Active Directory API to process WHERE clause conditions built with the following columns and operators. The rest of the filter is executed client side within the Sync App.

  • Id supports the '=' operator.

For example, the following query is processed server side:

SELECT * FROM Users WHERE Id = '08d30c14-2775-45c9-8809-3eca47340959'

GetDeleted

Retrieve recently deleted users. Deleted users remain available for up to 30 days.

GETDELETED FROM Users

Columns

Name Type ReadOnly Description
id [KEY] String False

The id of the user.

deletedDateTime Datetime False

The deletedDateTime of the user.

aboutMe String False

The aboutMe of the user.

accountEnabled Bool False

Indicates if accountEnabled for the user.

ageGroup String False

The ageGroup of the user.

assignedLicenses String False

The assignedLicenses of the user.

assignedPlans String False

The assignedPlans of the user.

birthday Datetime False

The birthday of the user.

businessPhones String False

The businessPhones of the user.

city String False

The city of the user.

companyName String False

The companyName of the user.

consentProvidedForMinor String False

The consentProvidedForMinor of the user.

country String False

The country of the user.

createdDateTime Datetime False

The createdDateTime of the user.

creationType String False

The creationType of the user.

department String False

The department of the user.

deviceEnrollmentLimit Int False

The deviceEnrollmentLimit of the user.

displayName String False

The displayName of the user.

employeeHireDate Datetime False

The employeeHireDate of the user.

employeeId String False

The employeeId of the user.

employeeOrgData_costCenter String False

The employeeOrgData_costCenter of the user.

employeeOrgData_division String False

The employeeOrgData_division of the user.

employeeType String False

The employeeType of the user.

externalUserState String False

The externalUserState of the user.

externalUserStateChangeDateTime Datetime False

The externalUserStateChangeDateTime of the user.

faxNumber String False

The faxNumber of the user.

givenName String False

The givenName of the user.

hireDate Datetime False

The hireDate of the user.

identities String False

The identities of the user.

imAddresses String False

The imAddresses of the user.

interests String False

The interests of the user.

isResourceAccount Bool False

Indicates if it isResourceAccount of the user.

jobTitle String False

The jobTitle of the user.

lastPasswordChangeDateTime Datetime False

The lastPasswordChangeDateTime of the user.

legalAgeGroupClassification String False

The legalAgeGroupClassification of the user.

licenseAssignmentStates String False

The licenseAssignmentStates of the user.

mail String False

The mail of the user.

mailboxSettings_archiveFolder String False

The mailboxSettings_archiveFolder of the user.

mailboxSettings_automaticRepliesSetting_externalAudience String False

The mailboxSettings_automaticRepliesSetting_externalAudience of the user.

mailboxSettings_automaticRepliesSetting_externalReplyMessage String False

The mailboxSettings_automaticRepliesSetting_externalReplyMessage of the user.

mailboxSettings_automaticRepliesSetting_internalReplyMessage String False

The mailboxSettings_automaticRepliesSetting_internalReplyMessage of the user.

mailboxSettings_automaticRepliesSetting_scheduledEndDateTime_dateTime Datetime False

The mailboxSettings_automaticRepliesSetting_scheduledEndDateTime_dateTime of the user.

mailboxSettings_automaticRepliesSetting_scheduledEndDateTime_timeZone String False

The mailboxSettings_automaticRepliesSetting_scheduledEndDateTime_timeZone of the user.

mailboxSettings_automaticRepliesSetting_status String False

The mailboxSettings_automaticRepliesSetting_status of the user.

mailboxSettings_dateFormat String False

The mailboxSettings_dateFormat of the user.

mailboxSettings_delegateMeetingMessageDeliveryOptions String False

The mailboxSettings_delegateMeetingMessageDeliveryOptions of the user.

mailboxSettings_language_displayName String False

The mailboxSettings_language_displayName of the user.

mailboxSettings_language_locale String False

The mailboxSettings_language_locale of the user.

mailboxSettings_timeFormat String False

The mailboxSettings_timeFormat of the user.

mailboxSettings_timeZone String False

The mailboxSettings_timeZone of the user.

mailboxSettings_userPurpose String False

The mailboxSettings_userPurpose of the user.

mailboxSettings_workingHours_daysOfWeek String False

The mailboxSettings_workingHours_daysOfWeek of the user.

mailboxSettings_workingHours_endTime Time False

The mailboxSettings_workingHours_endTime of the user.

mailboxSettings_workingHours_startTime Time False

The mailboxSettings_workingHours_startTime of the user.

mailboxSettings_workingHours_timeZone_name String False

The mailboxSettings_workingHours_timeZone_name of the user.

mailNickname String False

The mailNickname of the user.

mobilePhone String False

The mobilePhone of the user.

mySite String False

The mySite of the user.

officeLocation String False

The officeLocation of the user.

onPremisesDistinguishedName String False

The onPremisesDistinguishedName of the user.

onPremisesDomainName String False

The onPremisesDomainName of the user.

onPremisesExtensionAttributes_extensionAttribute1 String False

The onPremisesExtensionAttributes_extensionAttribute1 of the user.

onPremisesExtensionAttributes_extensionAttribute10 String False

The onPremisesExtensionAttributes_extensionAttribute10 of the user.

onPremisesExtensionAttributes_extensionAttribute11 String False

The onPremisesExtensionAttributes_extensionAttribute11 of the user.

onPremisesExtensionAttributes_extensionAttribute12 String False

The onPremisesExtensionAttributes_extensionAttribute12 of the user.

onPremisesExtensionAttributes_extensionAttribute13 String False

The onPremisesExtensionAttributes_extensionAttribute13 of the user.

onPremisesExtensionAttributes_extensionAttribute14 String False

The onPremisesExtensionAttributes_extensionAttribute14 of the user.

onPremisesExtensionAttributes_extensionAttribute15 String False

The onPremisesExtensionAttributes_extensionAttribute15 of the user.

onPremisesExtensionAttributes_extensionAttribute2 String False

The onPremisesExtensionAttributes_extensionAttribute2 of the user.

onPremisesExtensionAttributes_extensionAttribute3 String False

The onPremisesExtensionAttributes_extensionAttribute3 of the user.

onPremisesExtensionAttributes_extensionAttribute4 String False

The onPremisesExtensionAttributes_extensionAttribute4 of the user.

onPremisesExtensionAttributes_extensionAttribute5 String False

The onPremisesExtensionAttributes_extensionAttribute5 of the user.

onPremisesExtensionAttributes_extensionAttribute6 String False

The onPremisesExtensionAttributes_extensionAttribute6 of the user.

onPremisesExtensionAttributes_extensionAttribute7 String False

The onPremisesExtensionAttributes_extensionAttribute7 of the user.

onPremisesExtensionAttributes_extensionAttribute8 String False

The onPremisesExtensionAttributes_extensionAttribute8 of the user.

onPremisesExtensionAttributes_extensionAttribute9 String False

The onPremisesExtensionAttributes_extensionAttribute9 of the user.

onPremisesImmutableId String False

The onPremisesImmutableId of the user.

onPremisesLastSyncDateTime Datetime False

The onPremisesLastSyncDateTime of the user.

onPremisesProvisioningErrors String False

The onPremisesProvisioningErrors of the user.

onPremisesSamAccountName String False

The onPremisesSamAccountName of the user.

onPremisesSecurityIdentifier String False

The onPremisesSecurityIdentifier of the user.

onPremisesSyncEnabled Bool False

Indicates onPremisesSyncEnabled for the user.

onPremisesUserPrincipalName String False

The onPremisesUserPrincipalName of the user.

otherMails String False

The otherMails of the user.

passwordPolicies String False

The passwordPolicies of the user.

passwordProfile_forceChangePasswordNextSignIn Bool False

Indicate passwordProfile_forceChangePasswordNextSignIn for the user.

passwordProfile_forceChangePasswordNextSignInWithMfa Bool False

Indicate passwordProfile_forceChangePasswordNextSignInWithMfa for the user.

passwordProfile_password String False

The passwordProfile_password of the user.

pastProjects String False

The pastProjects of the user.

postalCode String False

The postalCode of the user.

preferredLanguage String False

The preferredLanguage of the user.

preferredName String False

The preferredName of the user.

provisionedPlans String False

The provisionedPlans of the user.

proxyAddresses String False

The proxyAddresses of the user.

responsibilities String False

The responsibilities of the user.

schools String False

The schools of the user.

showInAddressList Bool False

Indicate showInAddressList of the user.

signInSessionsValidFromDateTime Datetime False

The signInSessionsValidFromDateTime of the user.

skills String False

The skills of the user.

state String False

The state of the user.

streetAddress String False

The streetAddress of the user.

surname String False

The surname of the user.

usageLocation String False

The usageLocation of the user.

userPrincipalName String False

The userPrincipalName of the user.

userType String False

The userType of the user.

Azure Active Directory Connector for CData Sync

Views

Views are composed of columns and pseudo columns. Views are similar to tables in the way that data is represented; however, views do not support updates. Entities that are represented as views are typically read-only entities. Often, a stored procedure is available to update the data if such functionality is applicable to the data source.

Queries can be executed against a view as if it were a normal table, and the data that comes back is similar in that regard.

Dynamic views, such as queries exposed as views, and views for looking up specific combinations of project_team work items are supported.

Azure Active Directory Connector for CData Sync Views

Name Description
AdministrativeUnitMembers Retrieves all AdministrativeUnitMembers for the authenticated user.
AdministrativeUnits Retrieves all AdministrativeUnits for the authenticated user.
Contacts Retrieves the Contacts for the organization.
Contracts Retrieves all contracts for the authenticated user.
DeviceRegisteredOwners DeviceRegisteredOwners table for Azure AD data provider.
DeviceRegisteredUsers DeviceRegisteredUsers table for Azure AD data provider.
DirectoryAudits Retrieves all directory audit items for the authenticated user.
DirectoryRoleMembers DirectoryRoleMembers table for Azure AD data provider.
DirectoryRoles Retrieves all DirectoryRoles for the authenticated user.
DirectoryRoleTemplates Retrieves all DirectoryRoleTemplates for the authenticated user.
GroupApplicationRoleAssignments GroupApplicationRoleAssignments table for Azure AD data provider.
GroupMembers GroupMembers table for Azure AD data provider.
Organization Retrieves the Organization for the authenticated user.
RoleAssignments Retrieves the Role Assignments for the Azure AD.
RoleDefinitions Retrieves the Role Definitions for the Azure AD.
SignIns Retrieves the user sign-ins for your tenant.
UserApplicationRoleAssignments UserApplicationRoleAssignments table for Azure AD data provider.

Azure Active Directory Connector for CData Sync

AdministrativeUnitMembers

Retrieves all AdministrativeUnitMembers for the authenticated user.

Table Specific Information

Select

Get the members of administrative units in your Azure Active Directory. You can filter results by UnitId and MemberId.

  • UnitId supports the '=' and IN operators.
  • MemberId supports the '=' and IN operators.

For example, the following queries are processed server side:

SELECT * FROM AdministrativeUnitMembers WHERE UnitId = '1721e354-9b76-49d5-bdf1-bb30a936c3ab'

SELECT * FROM AdministrativeUnitMembers WHERE MemberId IN (SELECT Id FROM Users)

Columns

Name Type Description
UnitId [KEY] String The id of the administrativeUnit.
MemberId [KEY] String The User or Group Id of the user listed.

Azure Active Directory Connector for CData Sync

AdministrativeUnits

Retrieves all AdministrativeUnits for the authenticated user.

Table Specific Information

Select

Most filters are handled server side, but the specific field of Id will change the endpoint we use to retrieve the data. It must be specified with an '=' or IN condition. For example:

SELECT * FROM AdministrativeUnits WHERE Id = '1721e354-9b76-49d5-bdf1-bb30a936c3ab'
SELECT * FROM AdministrativeUnits WHERE Id IN ('1721e354-9b76-49d5-bdf1-bb30a936c3ab')
SELECT * FROM AdministrativeUnits WHERE DisplayName LIKE '%Test%'

Columns

Name Type Description
id [KEY] String The id of the administrativeUnit.
deletedDateTime Datetime The datetime when the administrativeUnit was deleted.
description String The description of the administrativeUnit.
displayName String The displayName of the administrativeUnit.
visibility String The visibility of the administrativeUnit.

Azure Active Directory Connector for CData Sync

Contacts

Retrieves the Contacts for the organization.

Table Specific Information

Select

Most filters are handled server side, but the specific field of Id will change the endpoint we use to retrieve the data. It must be specified with an '=' or IN condition. For example:

SELECT * FROM Contacts WHERE Id = '8b0a526e-178d-4494-a276-8819b74d7933'
SELECT * FROM Contacts WHERE Id IN ('8b0a526e-178d-4494-a276-8819b74d7933', 'a8f14261-fb3b-42f7-a27a-d29877b5010b')
SELECT * FROM Contacts WHERE DisplayName LIKE '%Test%'

Columns

Name Type Description
id [KEY] String The id of the organizationalContact.
deletedDateTime Datetime The datetime when the contact was deleted.
addresses String The addresses of the organizationalContact.
companyName String The companyName of the organizationalContact.
department String The department of the organizationalContact.
displayName String The displayName of the organizationalContact.
givenName String The givenName of the organizationalContact.
jobTitle String The jobTitle of the organizationalContact.
mail String The mail of the organizationalContact.
mailNickname String The mailNickname of the organizationalContact.
onPremisesLastSyncDateTime Datetime The onPremisesLastSyncDateTime of the organizationalContact.
onPremisesProvisioningErrors String The provisioning errors of the organizationalContact.
onPremisesSyncEnabled Bool Indicator if organizationalContact is onPremisesSyncEnabled.
phones String The phones of the organizationalContact.
proxyAddresses String The proxyAddresses of the organizationalContact.
surname String The surname of the organizationalContact.

Azure Active Directory Connector for CData Sync

Contracts

Retrieves all contracts for the authenticated user.

Table Specific Information

Select

Most filters are handled server side, but the specific field of Id will change the endpoint we use to retrieve the data. It must be specified with an '=' or IN condition. For example:

SELECT * FROM Contracts WHERE Id = '8b0a526e-178d-4494-a276-8819b74d7933'
SELECT * FROM Contracts WHERE Id IN ('8b0a526e-178d-4494-a276-8819b74d7933')
SELECT * FROM Contracts WHERE DisplayName LIKE '%Test%'

Columns

Name Type Description
id [KEY] String The id of the contract.
deletedDateTime Datetime The datetime when the contract was deleted.
contractType String The contractType of the contract.
customerId String The customerId of the contract.
defaultDomainName String The defaultDomainName of the contract.
displayName String The displayName of the contract.

Azure Active Directory Connector for CData Sync

DeviceRegisteredOwners

DeviceRegisteredOwners table for Azure AD data provider.

Table Specific Information

Select

Get the owners of registered Devices in your Azure Active Directory. You can filter results by DeviceId and OwnerId.

  • DeviceId supports the '=' and IN operators.
  • OwnerId supports the '=' and IN operators.

For example, the following queries are processed server side:

SELECT * FROM DeviceRegisteredOwners WHERE DeviceId = '2b9c0347-9640-4ba4-bd2d-50965fb026e7'

SELECT * FROM DeviceRegisteredOwners WHERE OwnerId IN (SELECT Id FROM Groups)

Columns

Name Type Description
DeviceId [KEY] String The Id of the Device.
OwnerId [KEY] String The User Id of the owner listed.

Azure Active Directory Connector for CData Sync

DeviceRegisteredUsers

DeviceRegisteredUsers table for Azure AD data provider.

Table Specific Information

Select

Get the users of registered Devices in your Azure Active Directory. You can filter results by DeviceId and UserId.

  • DeviceId supports the '=' and IN operators.
  • UserId supports the '=' and IN operators.

For example, the following queries are processed server side:

SELECT * FROM DeviceRegisteredUsers WHERE DeviceId = '2b9c0347-9640-4ba4-bd2d-50965fb026e7'

SELECT * FROM DeviceRegisteredUsers WHERE UsersId IN (SELECT Id FROM Users)

Columns

Name Type Description
DeviceId [KEY] String The Id of the Device.
UserId [KEY] String The User Id of the user listed.

Azure Active Directory Connector for CData Sync

DirectoryAudits

Retrieves all directory audit items for the authenticated user.

Table Specific Information

Select

Most filters are handled server side, but the specific field of Id will change the endpoint we use to retrieve the data. It must be specified with an '=' or IN condition. For example:

SELECT * FROM DirectoryAudits WHERE Id = 'Directory_2183313c-ac52-4772-8482-7b2eb2a5d7c9_LBZWQ_311068785'
SELECT * FROM DirectoryAudits WHERE Id IN ('Directory_2183313c-ac52-4772-8482-7b2eb2a5d7c9_LBZWQ_311068785')
SELECT * FROM DirectoryAudits WHERE ActivityDisplayName LIKE '%Update%'

Columns

Name Type Description
id [KEY] String The id of the DirectoryAudit.
activityDateTime Datetime The activityDateTime of the DirectoryAudit.
activityDisplayName String The activityDisplayName of the DirectoryAudit.
additionalDetails String The additionalDetails of the DirectoryAudit.
category String The category of the DirectoryAudit.
correlationId String The correlationId of the DirectoryAudit.
initiatedBy_app_appid String The initiatedBy_app_appid of the DirectoryAudit.
initiatedBy_app_displayName String The initiatedBy_app_displayName of the DirectoryAudit.
initiatedBy_app_servicePrincipalId String The initiatedBy_app_servicePrincipalId of the DirectoryAudit.
initiatedBy_app_servicePrincipalName String The initiatedBy_app_servicePrincipalName of the DirectoryAudit.
loggedByService String The loggedByService of the DirectoryAudit.
operationType String The operationType of the DirectoryAudit.
result String The result of the DirectoryAudit.
resultReason String The resultReason of the DirectoryAudit.
targetResources String The targetResources of the DirectoryAudit.

Azure Active Directory Connector for CData Sync

DirectoryRoleMembers

DirectoryRoleMembers table for Azure AD data provider.

Table Specific Information

Select

Get the members of Directory Roles in your Azure Active Directory. You can filter results by RoleId and UserId.

  • RoleId supports the '=' and IN operators.
  • UserId supports the '=' and IN operators.

For example, the following queries are processed server side:

SELECT * FROM DirectoryRoleMembers WHERE RoleId = '25502c98-94df-43fa-baf7-4a105e200030'

SELECT * FROM DirectoryRoleMembers WHERE UserId IN (SELECT Id FROM Users)

Columns

Name Type Description
RoleId [KEY] String The id of the directoryRole.
UserId [KEY] String The User Id of the user listed.

Azure Active Directory Connector for CData Sync

DirectoryRoles

Retrieves all DirectoryRoles for the authenticated user.

Table Specific Information

Select

Most filters are handled server side, but the specific field of Id will change the endpoint we use to retrieve the data. It must be specified with an '=' or IN condition. For example:

SELECT * FROM DirectoryRoles WHERE Id = '0f1032b0-ec73-4f72-836e-3b4411ea70c6'
SELECT * FROM DirectoryRoles WHERE RoleTemplateId = '4d6ac14f-3453-41d0-bef9-a3e0c569773a'
SELECT * FROM DirectoryRoles WHERE Id IN ('0f1032b0-ec73-4f72-836e-3b4411ea70c6', '081c8ba7-15a3-4c39-9972-053427b3c857')
SELECT * FROM DirectoryRoles WHERE DisplayName LIKE '%Admin%'

Columns

Name Type Description
id [KEY] String The id of the directoryRole.
deletedDateTime Datetime The datetime when the directoryRole was deleted.
description String The description of the directoryRole.
displayName String The displayName of the directoryRole.
roleTemplateId String The roleTemplateId of the directoryRole.

Azure Active Directory Connector for CData Sync

DirectoryRoleTemplates

Retrieves all DirectoryRoleTemplates for the authenticated user.

Table Specific Information

Select

Most filters are handled server side, but the specific field of Id will change the endpoint we use to retrieve the data. It must be specified with an '=' or IN condition. For example:

SELECT * FROM DirectoryRoleTemplates WHERE Id = '62e90394-69f5-4237-9190-012177145e10'
SELECT * FROM DirectoryRoleTemplates WHERE Id IN ('62e90394-69f5-4237-9190-012177145e10', '2af84b1e-32c8-42b7-82bc-daa82404023b')
SELECT * FROM DirectoryRoleTemplates WHERE DisplayName LIKE '%Admin%'

Columns

Name Type Description
id [KEY] String The id of the directoryRoleTemplate.
deletedDateTime Datetime The datetime when the directoryRoleTemplate was deleted.
description String The description of the directoryRoleTemplate.
displayName String The displayName of the directoryRoleTemplate.

Azure Active Directory Connector for CData Sync

GroupApplicationRoleAssignments

GroupApplicationRoleAssignments table for Azure AD data provider.

Table Specific Information

Select

Get the group application roles assignments in your Azure Active Directory. You can filter results by GroupId.

  • UserId supports the '=' and IN operators.

For example, the following queries are processed server side:

SELECT * FROM GroupApplicationRoleAssignments WHERE GroupId = 'ffacf701-6caf-4228-9e3b-7e57c14122ee'

SELECT * FROM GroupApplicationRoleAssignments WHERE GroupId IN (SELECT Id FROM Groups)

Columns

Name Type Description
GroupId [KEY] String The GroupId of the ApplicationRoleAssignment.
id [KEY] String The id of the ApplicationRoleAssignment.
appRoleId String The appRoleId of the ApplicationRoleAssignment.
createdDateTime Datetime The createdDateTime of the ApplicationRoleAssignment.
principalDisplayName String The principalDisplayName of the ApplicationRoleAssignment.
principalId String The principalId of the ApplicationRoleAssignment.
principalType String The principalType of the ApplicationRoleAssignment.
resourceDisplayName String The resourceDisplayName of the ApplicationRoleAssignment.
resourceId String The resourceId of the ApplicationRoleAssignment.

Azure Active Directory Connector for CData Sync

GroupMembers

GroupMembers table for Azure AD data provider.

Table Specific Information

Select

Query the GroupMembers table by retrieving everything from Azure AD or by specifying GroupId with = and IN operators. You can filter results by GroupId and MemberId.

  • GroupId supports the '=' and IN operators.
  • MemberId supports the '=' and IN operators.

For example, the following queries are processed server side:

SELECT * FROM GroupMembers WHERE GroupId IN ('4729c5e5-f923-4435-8a41-44423d42ea79', 'acabe397-8370-4c31-aeb7-2d7ae6b8cda1')

SELECT * FROM GroupMembers WHERE GroupId = '4729c5e5-f923-4435-8a41-44423d42ea79'

Columns

Name Type Description
GroupId [KEY] String The Id of the Group.
MemberId [KEY] String The User Id of the member listed.

Azure Active Directory Connector for CData Sync

Organization

Retrieves the Organization for the authenticated user.

Table Specific Information

Select


SELECT * FROM Organization

Columns

Name Type Description
id [KEY] String The id of the organization.
deletedDateTime Datetime The datetime when the organization was deleted.
assignedPlans String The assignedPlans of the organization.
businessPhones String The businessPhones of the organization.
city String The city of the organization.
country String The country of the organization.
countryLetterCode String The countryLetterCode of the organization.
createdDateTime Datetime The createdDateTime of the organization.
displayName String The displayName of the organization.
marketingNotificationEmails String The marketingNotificationEmails of the organization.
mobileDeviceManagementAuthority String The mobileDeviceManagementAuthority of the organization.
onPremisesLastSyncDateTime Datetime The onPremisesLastSyncDateTime of the organization.
onPremisesSyncEnabled Bool Indicator if organization is onPremisesSyncEnabled.
postalCode String The postalCode of the organization.
preferredLanguage String The preferredLanguage of the organization.
privacyProfile_contactEmail String The contactEmail of the privacyProfile.
privacyProfile_statementUrl String The statementUrl of the privacyProfile.
provisionedPlans String The provisionedPlans of the organization.
securityComplianceNotificationMails String The securityComplianceNotificationMails of the organization.
securityComplianceNotificationPhones String The securityComplianceNotificationPhones of the organization.
state String The state of the organization.
street String The street of the organization.
technicalNotificationMails String The technicalNotificationMails of the organization.
tenantType String The tenantType of the organization.
verifiedDomains String The verifiedDomains of the organization.

Azure Active Directory Connector for CData Sync

RoleAssignments

Retrieves the Role Assignments for the Azure AD.

Table Specific Information

Select

Most filters are handled server side, but the specific field of Id will change the endpoint we use to retrieve the data. It must be specified with an '=' or IN condition. For example:

SELECT * FROM RoleAssignments
SELECT * FROM RoleAssignments WHERE Id = '4yeYchSc90m7G5YI8Va7uM8rSNTfthJJt-QfAs-zqcI-1'
SELECT * FROM RoleAssignments WHERE RoleDefinitionId = '62e90394-69f5-4237-9190-012177145e10'
SELECT * FROM RoleAssignments WHERE PrincipalId = 'e5d250bd-92b4-44b2-b002-bc559f6d79e5'

Columns

Name Type Description
id [KEY] String The id of the roleAssignment.
condition String The condition of the roleAssignment.
roleDefinitionId String The roleDefinitionId of the roleAssignment.
principalId String The principalId of the roleAssignment.
directoryScopeId String The directoryScopeId of the roleAssignment.
appScopeId String The appScopeId of the roleAssignment.

Azure Active Directory Connector for CData Sync

RoleDefinitions

Retrieves the Role Definitions for the Azure AD.

Table Specific Information

Select

Most filters are handled server side, but the specific field of Id will change the endpoint we use to retrieve the data. It must be specified with an '=' or IN condition. For example:

SELECT * FROM RoleDefinitions WHERE Id = '62e90394-69f5-4237-9190-012177145e10'
SELECT * FROM RoleDefinitions WHERE Id IN ('62e90394-69f5-4237-9190-012177145e10', 'fe930be7-5e62-47db-91af-98c3a49a38b1')
SELECT * FROM RoleDefinitions WHERE DisplayName LIKE '%Admin%'

Columns

Name Type Description
id [KEY] String The id of the roleDefinition.
description String The description of the roleDefinition.
displayName String The displayName of the roleDefinition.
isBuiltIn Bool Indicator if roleDefinition is Builtin.
isEnabled Bool Indicator if roleDefinition is Enabled.
resourceScopes String The resourceScopes of the roleDefinition.
rolePermissions String The rolePermissions of the roleDefinition.
templateId String The templateId of the roleDefinition.
version String The version of the roleDefinition.

Azure Active Directory Connector for CData Sync

SignIns

Retrieves the user sign-ins for your tenant.

Table Specific Information

Select

Most filters are handled server side, but the specific field of Id will change the endpoint we use to retrieve the data. It must be specified with an '=' or IN condition. For example:

SELECT * FROM SignIns WHERE Id = '8b0a526e-178d-4494-a276-8819b74d7933'
SELECT * FROM SignIns WHERE Id IN ('8b0a526e-178d-4494-a276-8819b74d7933', 'a8f14261-fb3b-42f7-a27a-d29877b5010b')
SELECT * FROM SignIns WHERE ResourceDisplayName LIKE '%Test%'

Columns

Name Type Description
id [KEY] String The id of the SignIns.
appDisplayName String The appDisplayName of the SignIns.
appId String The appId of the SignIns.
appliedConditionalAccessPolicies String The appliedConditionalAccessPolicies of the SignIns.
clientAppUsed String The clientAppUsed of the SignIns.
conditionalAccessStatus String The conditionalAccessStatus of the SignIns.
correlationId String The correlationId of the SignIns.
createdDateTime Datetime The createdDateTime of the SignIns.
deviceDetail_browser String The deviceDetail_browser of the SignIns.
deviceDetail_deviceId String The deviceDetail_deviceId of the SignIns.
deviceDetail_displayName String The deviceDetail_displayName of the SignIns.
deviceDetail_isCompliant Bool The deviceDetail_isCompliant of the SignIns.
deviceDetail_isManaged Bool The deviceDetail_isManaged of the SignIns.
deviceDetail_operatingSystem String The deviceDetail_operatingSystem of the SignIns.
deviceDetail_trustType String The deviceDetail_trustType of the SignIns.
ipAddress String The ipAddress of the SignIns.
isInteractive Bool The isInteractive of the SignIns.
signInLocation_city String The signInLocation_city of the SignIns.
signInLocation_countryOrRegion String The signInLocation_countryOrRegion of the SignIns.
signInLocation_state String The signInLocation_state of the SignIns.
resourceDisplayName String The resourceDisplayName of the SignIns.
resourceId String The resourceId of the SignIns.
riskDetail String The riskDetail of the SignIns.
riskEventTypes String The riskEventTypes of the DirectoryAudit.
riskEventTypes_v2 String The riskEventTypes_v2 of the DirectoryAudit.
riskLevelAggregated String The riskLevelAggregated of the SignIns.
riskLevelDuringSignIn String The riskLevelDuringSignIn of the SignIns.
riskState String The riskState of the SignIns.
signInStatus_additionalDetails String The signInStatus_additionalDetails of the SignIns.
signInStatus_errorCode Int The signInStatus_errorCode of the application.
signInStatus_failureReason String The signInStatus_failureReason of the SignIns.
userDisplayName String The userDisplayName of the SignIns.
userId String The userId of the SignIns.
userPrincipalName String The userPrincipalName of the SignIns.

Azure Active Directory Connector for CData Sync

UserApplicationRoleAssignments

UserApplicationRoleAssignments table for Azure AD data provider.

Table Specific Information

Select

Get the user application roles assignments in your Azure Active Directory. You can filter results by UserId.

  • UserId supports the '=' and IN operators.

For example, the following queries are processed server side:

SELECT * FROM UserApplicationRoleAssignments WHERE UserId = 'ffacf701-6caf-4228-9e3b-7e57c14122ee'

SELECT * FROM UserApplicationRoleAssignments WHERE UserId IN (SELECT Id FROM Users)

Columns

Name Type Description
UserId [KEY] String The UserId of the ApplicationRoleAssignment.
id [KEY] String The id of the ApplicationRoleAssignment.
appRoleId String The appRoleId of the ApplicationRoleAssignment.
createdDateTime Datetime The createdDateTime of the ApplicationRoleAssignment.
principalDisplayName String The principalDisplayName of the ApplicationRoleAssignment.
principalId String The principalId of the ApplicationRoleAssignment.
principalType String The principalType of the ApplicationRoleAssignment.
resourceDisplayName String The resourceDisplayName of the ApplicationRoleAssignment.
resourceId String The resourceId of the ApplicationRoleAssignment.

Azure Active Directory Connector for CData Sync

Data Type Mapping

Data Type Mappings

The Sync App maps types from the data source to the corresponding data type available in the schema. The table below documents these mappings.

Azure Active Directory (OData V4) CData Schema
Edm.Binary binary
Edm.Boolean bool
Edm.Date datetime
Edm.DateTimeOffset datetime
Edm.Decimal decimal
Edm.Double double
Edm.Guid guid
Edm.Int32 int
Edm.String string
Edm.TimeOfDay time

Azure Active Directory Connector for CData Sync

Connection String Options

The connection string properties are the various options that can be used to establish a connection. This section provides a complete list of the options you can configure in the connection string for this provider. Click the links for further details.

For more information on establishing a connection, see Establishing a Connection.

Authentication


PropertyDescription
AuthSchemeThe type of authentication to use when connecting to Azure Active Directory.

Azure Authentication


PropertyDescription
AzureTenantThe Microsoft Online tenant being used to access data. If not specified, your default tenant is used.
AzureEnvironmentThe Azure Environment to use when establishing a connection.

OAuth


PropertyDescription
OAuthClientIdThe client Id assigned when you register your application with an OAuth authorization server.
OAuthClientSecretThe client secret assigned when you register your application with an OAuth authorization server.
OAuthGrantTypeThe grant type for the OAuth flow.

JWT OAuth


PropertyDescription
OAuthJWTCertThe JWT Certificate store.
OAuthJWTCertTypeThe type of key store containing the JWT Certificate.
OAuthJWTCertPasswordThe password for the OAuth JWT certificate.
OAuthJWTCertSubjectThe subject of the OAuth JWT certificate.
OAuthJWTIssuerThe issuer of the Java Web Token.
OAuthJWTSubjectThe user subject for which the application is requesting delegated access.

SSL


PropertyDescription
SSLServerCertThe certificate to be accepted from the server when connecting using TLS/SSL.

Firewall


PropertyDescription
FirewallTypeThe protocol used by a proxy-based firewall.
FirewallServerThe name or IP address of a proxy-based firewall.
FirewallPortThe TCP port for a proxy-based firewall.
FirewallUserThe user name to use to authenticate with a proxy-based firewall.
FirewallPasswordA password used to authenticate to a proxy-based firewall.

Proxy


PropertyDescription
ProxyAutoDetectThis indicates whether to use the system proxy settings or not. This takes precedence over other proxy settings, so you'll need to set ProxyAutoDetect to FALSE in order use custom proxy settings.
ProxyServerThe hostname or IP address of a proxy to route HTTP traffic through.
ProxyPortThe TCP port the ProxyServer proxy is running on.
ProxyAuthSchemeThe authentication type to use to authenticate to the ProxyServer proxy.
ProxyUserA user name to be used to authenticate to the ProxyServer proxy.
ProxyPasswordA password to be used to authenticate to the ProxyServer proxy.
ProxySSLTypeThe SSL type to use when connecting to the ProxyServer proxy.
ProxyExceptionsA semicolon separated list of destination hostnames or IPs that are exempt from connecting through the ProxyServer .

Logging


PropertyDescription
LogModulesCore modules to be included in the log file.

Schema


PropertyDescription
LocationA path to the directory that contains the schema files defining tables, views, and stored procedures.
BrowsableSchemasThis property restricts the schemas reported to a subset of the available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC.
TablesThis property restricts the tables reported to a subset of the available tables. For example, Tables=TableA,TableB,TableC.
ViewsRestricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC.

Miscellaneous


PropertyDescription
MaxRowsLimits the number of rows returned rows when no aggregation or group by is used in the query. This helps avoid performance issues at design time.
OtherThese hidden properties are used only in specific use cases.
PseudoColumnsThis property indicates whether or not to include pseudo columns as columns to the table.
TimeoutThe value in seconds until the timeout error is thrown, canceling the operation.
UserDefinedViewsA filepath pointing to the JSON configuration file containing your custom views.
Azure Active Directory Connector for CData Sync

Authentication

This section provides a complete list of the Authentication properties you can configure in the connection string for this provider.


PropertyDescription
AuthSchemeThe type of authentication to use when connecting to Azure Active Directory.
Azure Active Directory Connector for CData Sync

AuthScheme

The type of authentication to use when connecting to Azure Active Directory.

Remarks

  • AzureAD: Set this to perform Azure Active Directory OAuth authentication.
  • AzureMSI: Set this to automatically obtain Managed Service Identity credentials when running on an Azure VM.
  • AzureServicePrincipal: Set this to authenticate as an Azure Service Principal.

Azure Active Directory Connector for CData Sync

Azure Authentication

This section provides a complete list of the Azure Authentication properties you can configure in the connection string for this provider.


PropertyDescription
AzureTenantThe Microsoft Online tenant being used to access data. If not specified, your default tenant is used.
AzureEnvironmentThe Azure Environment to use when establishing a connection.
Azure Active Directory Connector for CData Sync

AzureTenant

The Microsoft Online tenant being used to access data. If not specified, your default tenant is used.

Remarks

The Microsoft Online tenant being used to access data. For instance, contoso.onmicrosoft.com. Alternatively, specify the tenant Id. This value is the directory Id in the Azure Portal > Azure Active Directory > Properties.

Typically it is not necessary to specify the Tenant. This can be automatically determined by Microsoft when using the OAuthGrantType set to CODE (default). However, it may fail in the case that the user belongs to multiple tenants. For instance, if an Admin of domain A invites a user of domain B to be a guest user. The user will now belong to both tenants. It is a good practice to specify the Tenant, although in general things should normally work without having to specify it.

The AzureTenant is required when setting OAuthGrantType to CLIENT. When using client credentials, there is no user context. The credentials are taken from the context of the app itself. While Microsoft still allows client credentials to be obtained without specifying which Tenant, it has a much lower probability of picking the specific tenant you want to work with. For this reason, we require AzureTenant to be explicitly stated for all client credentials connections to ensure you get credentials that are applicable for the domain you intend to connect to.

Azure Active Directory Connector for CData Sync

AzureEnvironment

The Azure Environment to use when establishing a connection.

Remarks

In most cases, leaving the environment set to global will work. However, if your Azure Account has been added to a different environment, the AzureEnvironment may be used to specify which environment. The available values are GLOBAL, CHINA, USGOVT, USGOVTDOD.

Azure Active Directory Connector for CData Sync

OAuth

This section provides a complete list of the OAuth properties you can configure in the connection string for this provider.


PropertyDescription
OAuthClientIdThe client Id assigned when you register your application with an OAuth authorization server.
OAuthClientSecretThe client secret assigned when you register your application with an OAuth authorization server.
OAuthGrantTypeThe grant type for the OAuth flow.
Azure Active Directory Connector for CData Sync

OAuthClientId

The client Id assigned when you register your application with an OAuth authorization server.

Remarks

As part of registering an OAuth application, you will receive the OAuthClientId value, sometimes also called a consumer key, and a client secret, the OAuthClientSecret.

Azure Active Directory Connector for CData Sync

OAuthClientSecret

The client secret assigned when you register your application with an OAuth authorization server.

Remarks

As part of registering an OAuth application, you will receive the OAuthClientId, also called a consumer key. You will also receive a client secret, also called a consumer secret. Set the client secret in the OAuthClientSecret property.

Azure Active Directory Connector for CData Sync

OAuthGrantType

The grant type for the OAuth flow.

Remarks

The following options are available: CODE,CLIENT

Azure Active Directory Connector for CData Sync

JWT OAuth

This section provides a complete list of the JWT OAuth properties you can configure in the connection string for this provider.


PropertyDescription
OAuthJWTCertThe JWT Certificate store.
OAuthJWTCertTypeThe type of key store containing the JWT Certificate.
OAuthJWTCertPasswordThe password for the OAuth JWT certificate.
OAuthJWTCertSubjectThe subject of the OAuth JWT certificate.
OAuthJWTIssuerThe issuer of the Java Web Token.
OAuthJWTSubjectThe user subject for which the application is requesting delegated access.
Azure Active Directory Connector for CData Sync

OAuthJWTCert

The JWT Certificate store.

Remarks

The name of the certificate store for the client certificate.

The OAuthJWTCertType field specifies the type of the certificate store specified by OAuthJWTCert. If the store is password protected, specify the password in OAuthJWTCertPassword.

OAuthJWTCert is used in conjunction with the OAuthJWTCertSubject field in order to specify client certificates. If OAuthJWTCert has a value, and OAuthJWTCertSubject is set, a search for a certificate is initiated. Please refer to the OAuthJWTCertSubject field for details.

Designations of certificate stores are platform-dependent.

The following are designations of the most common User and Machine certificate stores in Windows:

MYA certificate store holding personal certificates with their associated private keys.
CACertifying authority certificates.
ROOTRoot certificates.
SPCSoftware publisher certificates.

In Java, the certificate store normally is a file containing certificates and optional private keys.

When the certificate store type is PFXFile, this property must be set to the name of the file. When the type is PFXBlob, the property must be set to the binary contents of a PFX file (i.e. PKCS12 certificate store).

Azure Active Directory Connector for CData Sync

OAuthJWTCertType

The type of key store containing the JWT Certificate.

Remarks

This property can take one of the following values:

USERFor Windows, this specifies that the certificate store is a certificate store owned by the current user. Note: This store type is not available in Java.
MACHINEFor Windows, this specifies that the certificate store is a machine store. Note: this store type is not available in Java.
PFXFILEThe certificate store is the name of a PFX (PKCS12) file containing certificates.
PFXBLOBThe certificate store is a string (base-64-encoded) representing a certificate store in PFX (PKCS12) format.
JKSFILEThe certificate store is the name of a Java key store (JKS) file containing certificates. Note: this store type is only available in Java.
JKSBLOBThe certificate store is a string (base-64-encoded) representing a certificate store in Java key store (JKS) format. Note: this store type is only available in Java.
PEMKEY_FILEThe certificate store is the name of a PEM-encoded file that contains a private key and an optional certificate.
PEMKEY_BLOBThe certificate store is a string (base64-encoded) that contains a private key and an optional certificate.
PUBLIC_KEY_FILEThe certificate store is the name of a file that contains a PEM- or DER-encoded public key certificate.
PUBLIC_KEY_BLOBThe certificate store is a string (base-64-encoded) that contains a PEM- or DER-encoded public key certificate.
SSHPUBLIC_KEY_FILEThe certificate store is the name of a file that contains an SSH-style public key.
SSHPUBLIC_KEY_BLOBThe certificate store is a string (base-64-encoded) that contains an SSH-style public key.
P7BFILEThe certificate store is the name of a PKCS7 file containing certificates.
PPKFILEThe certificate store is the name of a file that contains a PPK (PuTTY Private Key).
XMLFILEThe certificate store is the name of a file that contains a certificate in XML format.
XMLBLOBThe certificate store is a string that contains a certificate in XML format.

Azure Active Directory Connector for CData Sync

OAuthJWTCertPassword

The password for the OAuth JWT certificate.

Remarks

If the certificate store is of a type that requires a password, this property is used to specify that password in order to open the certificate store.

Azure Active Directory Connector for CData Sync

OAuthJWTCertSubject

The subject of the OAuth JWT certificate.

Remarks

When loading a certificate the subject is used to locate the certificate in the store.

If an exact match is not found, the store is searched for subjects containing the value of the property.

If a match is still not found, the property is set to an empty string, and no certificate is selected.

The special value "*" picks the first certificate in the certificate store.

The certificate subject is a comma separated list of distinguished name fields and values. For instance "CN=www.server.com, OU=test, C=US, [email protected]". Common fields and their meanings are displayed below.

FieldMeaning
CNCommon Name. This is commonly a host name like www.server.com.
OOrganization
OUOrganizational Unit
LLocality
SState
CCountry
EEmail Address

If a field value contains a comma it must be quoted.

Azure Active Directory Connector for CData Sync

OAuthJWTIssuer

The issuer of the Java Web Token.

Remarks

The issuer of the Java Web Token. This is typically either the Client Id or Email Address of the OAuth Application.

Azure Active Directory Connector for CData Sync

OAuthJWTSubject

The user subject for which the application is requesting delegated access.

Remarks

The user subject for which the application is requesting delegated access. Typically, the user account name or email address.

Azure Active Directory Connector for CData Sync

SSL

This section provides a complete list of the SSL properties you can configure in the connection string for this provider.


PropertyDescription
SSLServerCertThe certificate to be accepted from the server when connecting using TLS/SSL.
Azure Active Directory Connector for CData Sync

SSLServerCert

The certificate to be accepted from the server when connecting using TLS/SSL.

Remarks

If using a TLS/SSL connection, this property can be used to specify the TLS/SSL certificate to be accepted from the server. Any other certificate that is not trusted by the machine is rejected.

This property can take the following forms:

Description Example
A full PEM Certificate (example shortened for brevity) -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE-----
A path to a local file containing the certificate C:\cert.cer
The public key (example shortened for brevity) -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY-----
The MD5 Thumbprint (hex values can also be either space or colon separated) ecadbdda5a1529c58a1e9e09828d70e4
The SHA1 Thumbprint (hex values can also be either space or colon separated) 34a929226ae0819f2ec14b4a3d904f801cbb150d

If not specified, any certificate trusted by the machine is accepted.

Use '*' to signify to accept all certificates. Note that this is not recommended due to security concerns.

Azure Active Directory Connector for CData Sync

Firewall

This section provides a complete list of the Firewall properties you can configure in the connection string for this provider.


PropertyDescription
FirewallTypeThe protocol used by a proxy-based firewall.
FirewallServerThe name or IP address of a proxy-based firewall.
FirewallPortThe TCP port for a proxy-based firewall.
FirewallUserThe user name to use to authenticate with a proxy-based firewall.
FirewallPasswordA password used to authenticate to a proxy-based firewall.
Azure Active Directory Connector for CData Sync

FirewallType

The protocol used by a proxy-based firewall.

Remarks

This property specifies the protocol that the Sync App will use to tunnel traffic through the FirewallServer proxy. Note that by default, the Sync App connects to the system proxy; to disable this behavior and connect to one of the following proxy types, set ProxyAutoDetect to false.

Type Default Port Description
TUNNEL 80 When this is set, the Sync App opens a connection to Azure Active Directory and traffic flows back and forth through the proxy.
SOCKS4 1080 When this is set, the Sync App sends data through the SOCKS 4 proxy specified by FirewallServer and FirewallPort and passes the FirewallUser value to the proxy, which determines if the connection request should be granted.
SOCKS5 1080 When this is set, the Sync App sends data through the SOCKS 5 proxy specified by FirewallServer and FirewallPort. If your proxy requires authentication, set FirewallUser and FirewallPassword to credentials the proxy recognizes.

To connect to HTTP proxies, use ProxyServer and ProxyPort. To authenticate to HTTP proxies, use ProxyAuthScheme, ProxyUser, and ProxyPassword.

Azure Active Directory Connector for CData Sync

FirewallServer

The name or IP address of a proxy-based firewall.

Remarks

This property specifies the IP address, DNS name, or host name of a proxy allowing traversal of a firewall. The protocol is specified by FirewallType: Use FirewallServer with this property to connect through SOCKS or do tunneling. Use ProxyServer to connect to an HTTP proxy.

Note that the Sync App uses the system proxy by default. To use a different proxy, set ProxyAutoDetect to false.

Azure Active Directory Connector for CData Sync

FirewallPort

The TCP port for a proxy-based firewall.

Remarks

This specifies the TCP port for a proxy allowing traversal of a firewall. Use FirewallServer to specify the name or IP address. Specify the protocol with FirewallType.

Azure Active Directory Connector for CData Sync

FirewallUser

The user name to use to authenticate with a proxy-based firewall.

Remarks

The FirewallUser and FirewallPassword properties are used to authenticate against the proxy specified in FirewallServer and FirewallPort, following the authentication method specified in FirewallType.

Azure Active Directory Connector for CData Sync

FirewallPassword

A password used to authenticate to a proxy-based firewall.

Remarks

This property is passed to the proxy specified by FirewallServer and FirewallPort, following the authentication method specified by FirewallType.

Azure Active Directory Connector for CData Sync

Proxy

This section provides a complete list of the Proxy properties you can configure in the connection string for this provider.


PropertyDescription
ProxyAutoDetectThis indicates whether to use the system proxy settings or not. This takes precedence over other proxy settings, so you'll need to set ProxyAutoDetect to FALSE in order use custom proxy settings.
ProxyServerThe hostname or IP address of a proxy to route HTTP traffic through.
ProxyPortThe TCP port the ProxyServer proxy is running on.
ProxyAuthSchemeThe authentication type to use to authenticate to the ProxyServer proxy.
ProxyUserA user name to be used to authenticate to the ProxyServer proxy.
ProxyPasswordA password to be used to authenticate to the ProxyServer proxy.
ProxySSLTypeThe SSL type to use when connecting to the ProxyServer proxy.
ProxyExceptionsA semicolon separated list of destination hostnames or IPs that are exempt from connecting through the ProxyServer .
Azure Active Directory Connector for CData Sync

ProxyAutoDetect

This indicates whether to use the system proxy settings or not. This takes precedence over other proxy settings, so you'll need to set ProxyAutoDetect to FALSE in order use custom proxy settings.

Remarks

This takes precedence over other proxy settings, so you'll need to set ProxyAutoDetect to FALSE in order use custom proxy settings.

To connect to an HTTP proxy, see ProxyServer. For other proxies, such as SOCKS or tunneling, see FirewallType.

Azure Active Directory Connector for CData Sync

ProxyServer

The hostname or IP address of a proxy to route HTTP traffic through.

Remarks

The hostname or IP address of a proxy to route HTTP traffic through. The Sync App can use the HTTP, Windows (NTLM), or Kerberos authentication types to authenticate to an HTTP proxy.

If you need to connect through a SOCKS proxy or tunnel the connection, see FirewallType.

By default, the Sync App uses the system proxy. If you need to use another proxy, set ProxyAutoDetect to false.

Azure Active Directory Connector for CData Sync

ProxyPort

The TCP port the ProxyServer proxy is running on.

Remarks

The port the HTTP proxy is running on that you want to redirect HTTP traffic through. Specify the HTTP proxy in ProxyServer. For other proxy types, see FirewallType.

Azure Active Directory Connector for CData Sync

ProxyAuthScheme

The authentication type to use to authenticate to the ProxyServer proxy.

Remarks

This value specifies the authentication type to use to authenticate to the HTTP proxy specified by ProxyServer and ProxyPort.

Note that the Sync App will use the system proxy settings by default, without further configuration needed; if you want to connect to another proxy, you will need to set ProxyAutoDetect to false, in addition to ProxyServer and ProxyPort. To authenticate, set ProxyAuthScheme and set ProxyUser and ProxyPassword, if needed.

The authentication type can be one of the following:

  • BASIC: The Sync App performs HTTP BASIC authentication.
  • DIGEST: The Sync App performs HTTP DIGEST authentication.
  • NEGOTIATE: The Sync App retrieves an NTLM or Kerberos token based on the applicable protocol for authentication.
  • PROPRIETARY: The Sync App does not generate an NTLM or Kerberos token. You must supply this token in the Authorization header of the HTTP request.

If you need to use another authentication type, such as SOCKS 5 authentication, see FirewallType.

Azure Active Directory Connector for CData Sync

ProxyUser

A user name to be used to authenticate to the ProxyServer proxy.

Remarks

The ProxyUser and ProxyPassword options are used to connect and authenticate against the HTTP proxy specified in ProxyServer.

You can select one of the available authentication types in ProxyAuthScheme. If you are using HTTP authentication, set this to the user name of a user recognized by the HTTP proxy. If you are using Windows or Kerberos authentication, set this property to a user name in one of the following formats:

user@domain
domain\user

Azure Active Directory Connector for CData Sync

ProxyPassword

A password to be used to authenticate to the ProxyServer proxy.

Remarks

This property is used to authenticate to an HTTP proxy server that supports NTLM (Windows), Kerberos, or HTTP authentication. To specify the HTTP proxy, you can set ProxyServer and ProxyPort. To specify the authentication type, set ProxyAuthScheme.

If you are using HTTP authentication, additionally set ProxyUser and ProxyPassword to HTTP proxy.

If you are using NTLM authentication, set ProxyUser and ProxyPassword to your Windows password. You may also need these to complete Kerberos authentication.

For SOCKS 5 authentication or tunneling, see FirewallType.

By default, the Sync App uses the system proxy. If you want to connect to another proxy, set ProxyAutoDetect to false.

Azure Active Directory Connector for CData Sync

ProxySSLType

The SSL type to use when connecting to the ProxyServer proxy.

Remarks

This property determines when to use SSL for the connection to an HTTP proxy specified by ProxyServer. This value can be AUTO, ALWAYS, NEVER, or TUNNEL. The applicable values are the following:

AUTODefault setting. If the URL is an HTTPS URL, the Sync App will use the TUNNEL option. If the URL is an HTTP URL, the component will use the NEVER option.
ALWAYSThe connection is always SSL enabled.
NEVERThe connection is not SSL enabled.
TUNNELThe connection is through a tunneling proxy. The proxy server opens a connection to the remote host and traffic flows back and forth through the proxy.

Azure Active Directory Connector for CData Sync

ProxyExceptions

A semicolon separated list of destination hostnames or IPs that are exempt from connecting through the ProxyServer .

Remarks

The ProxyServer is used for all addresses, except for addresses defined in this property. Use semicolons to separate entries.

Note that the Sync App uses the system proxy settings by default, without further configuration needed; if you want to explicitly configure proxy exceptions for this connection, you need to set ProxyAutoDetect = false, and configure ProxyServer and ProxyPort. To authenticate, set ProxyAuthScheme and set ProxyUser and ProxyPassword, if needed.

Azure Active Directory Connector for CData Sync

Logging

This section provides a complete list of the Logging properties you can configure in the connection string for this provider.


PropertyDescription
LogModulesCore modules to be included in the log file.
Azure Active Directory Connector for CData Sync

LogModules

Core modules to be included in the log file.

Remarks

Only the modules specified (separated by ';') will be included in the log file. By default all modules are included.

See the Logging page for an overview.

Azure Active Directory Connector for CData Sync

Schema

This section provides a complete list of the Schema properties you can configure in the connection string for this provider.


PropertyDescription
LocationA path to the directory that contains the schema files defining tables, views, and stored procedures.
BrowsableSchemasThis property restricts the schemas reported to a subset of the available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC.
TablesThis property restricts the tables reported to a subset of the available tables. For example, Tables=TableA,TableB,TableC.
ViewsRestricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC.
Azure Active Directory Connector for CData Sync

Location

A path to the directory that contains the schema files defining tables, views, and stored procedures.

Remarks

The path to a directory which contains the schema files for the Sync App (.rsd files for tables and views, .rsb files for stored procedures). The folder location can be a relative path from the location of the executable. The Location property is only needed if you want to customize definitions (for example, change a column name, ignore a column, and so on) or extend the data model with new tables, views, or stored procedures.

If left unspecified, the default location is "%APPDATA%\\CData\\AzureActiveDirectory Data Provider\\Schema" with %APPDATA% being set to the user's configuration directory:

Azure Active Directory Connector for CData Sync

BrowsableSchemas

This property restricts the schemas reported to a subset of the available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC.

Remarks

Listing the schemas from databases can be expensive. Providing a list of schemas in the connection string improves the performance.

Azure Active Directory Connector for CData Sync

Tables

This property restricts the tables reported to a subset of the available tables. For example, Tables=TableA,TableB,TableC.

Remarks

Listing the tables from some databases can be expensive. Providing a list of tables in the connection string improves the performance of the Sync App.

This property can also be used as an alternative to automatically listing views if you already know which ones you want to work with and there would otherwise be too many to work with.

Specify the tables you want in a comma-separated list. Each table should be a valid SQL identifier with any special characters escaped using square brackets, double-quotes or backticks. For example, Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space`.

Note that when connecting to a data source with multiple schemas or catalogs, you will need to provide the fully qualified name of the table in this property, as in the last example here, to avoid ambiguity between tables that exist in multiple catalogs or schemas.

Azure Active Directory Connector for CData Sync

Views

Restricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC.

Remarks

Listing the views from some databases can be expensive. Providing a list of views in the connection string improves the performance of the Sync App.

This property can also be used as an alternative to automatically listing views if you already know which ones you want to work with and there would otherwise be too many to work with.

Specify the views you want in a comma-separated list. Each view should be a valid SQL identifier with any special characters escaped using square brackets, double-quotes or backticks. For example, Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space`.

Note that when connecting to a data source with multiple schemas or catalogs, you will need to provide the fully qualified name of the table in this property, as in the last example here, to avoid ambiguity between tables that exist in multiple catalogs or schemas.

Azure Active Directory Connector for CData Sync

Miscellaneous

This section provides a complete list of the Miscellaneous properties you can configure in the connection string for this provider.


PropertyDescription
MaxRowsLimits the number of rows returned rows when no aggregation or group by is used in the query. This helps avoid performance issues at design time.
OtherThese hidden properties are used only in specific use cases.
PseudoColumnsThis property indicates whether or not to include pseudo columns as columns to the table.
TimeoutThe value in seconds until the timeout error is thrown, canceling the operation.
UserDefinedViewsA filepath pointing to the JSON configuration file containing your custom views.
Azure Active Directory Connector for CData Sync

MaxRows

Limits the number of rows returned rows when no aggregation or group by is used in the query. This helps avoid performance issues at design time.

Remarks

Limits the number of rows returned rows when no aggregation or group by is used in the query. This helps avoid performance issues at design time.

Azure Active Directory Connector for CData Sync

Other

These hidden properties are used only in specific use cases.

Remarks

The properties listed below are available for specific use cases. Normal driver use cases and functionality should not require these properties.

Specify multiple properties in a semicolon-separated list.

Integration and Formatting

DefaultColumnSizeSets the default length of string fields when the data source does not provide column length in the metadata. The default value is 2000.
ConvertDateTimeToGMTDetermines whether to convert date-time values to GMT, instead of the local time of the machine.
RecordToFile=filenameRecords the underlying socket data transfer to the specified file.

Azure Active Directory Connector for CData Sync

PseudoColumns

This property indicates whether or not to include pseudo columns as columns to the table.

Remarks

This setting is particularly helpful in Entity Framework, which does not allow you to set a value for a pseudo column unless it is a table column. The value of this connection setting is of the format "Table1=Column1, Table1=Column2, Table2=Column3". You can use the "*" character to include all tables and all columns; for example, "*=*".

Azure Active Directory Connector for CData Sync

Timeout

The value in seconds until the timeout error is thrown, canceling the operation.

Remarks

If Timeout = 0, operations do not time out. The operations run until they complete successfully or until they encounter an error condition.

If Timeout expires and the operation is not yet complete, the Sync App throws an exception.

Azure Active Directory Connector for CData Sync

UserDefinedViews

A filepath pointing to the JSON configuration file containing your custom views.

Remarks

User Defined Views are defined in a JSON-formatted configuration file called UserDefinedViews.json. The Sync App automatically detects the views specified in this file.

You can also have multiple view definitions and control them using the UserDefinedViews connection property. When you use this property, only the specified views are seen by the Sync App.

This User Defined View configuration file is formatted as follows:

  • Each root element defines the name of a view.
  • Each root element contains a child element, called query, which contains the custom SQL query for the view.

For example:

{
	"MyView": {
		"query": "SELECT * FROM DirectoryRoles WHERE MyColumn = 'value'"
	},
	"MyView2": {
		"query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
	}
}
Use the UserDefinedViews connection property to specify the location of your JSON configuration file. For example:
"UserDefinedViews", "C:\\Users\\yourusername\\Desktop\\tmp\\UserDefinedViews.json"

Copyright (c) 2023 CData Software, Inc. - All rights reserved.
Build 22.0.8509