Skip to content

Schema Reference

The application schema is used to configure the objects returned from a connector.

Note

  • The Account Schema tab is used to define the attributes for each object type in the application being configured. The schema attributes can be defined as Entitlement or Multi-Valued. Refer to Managing Source Account Schemas for more information.

  • The schema attributes that are not present by default must be defined as strings if not specified.

The Microsoft Lightweight Directory Services connector uses the following default correlation and object configurations.

Default Account Schema

Each source supports a variety of details, or attributes, about each user who has an account, such as their name, email address, manager name, and location.

The set of account attributes each source stores and how they're organized is known as the account's schema. To best represent your data, you can configure sources to use an account schema matching the one you use in the external connector. Refer to Managing Source Account Schemas for more information.

Default Account ID

SailPoint requires that certain attributes remain in your configuration. These attributes are referred to as account IDs.

Caution

Changing the attribute marked as the account ID after aggregating accounts can result in duplicate accounts being created. To avoid this, either reset the accounts on this source before editing the account ID attribute or edit the account ID attribute before aggregating accounts.

To resolve issues caused by changing account IDs, reconfigure them to their default values.

The following table lists the default account IDs for this connector:

Account ID Schema Object Type
dn Account
dn Group

Default Account Attributes

The Microsoft Lightweight Directory Services connector supports the following default account schema attributes and customer configurable attributes. The attributes must be defined as strings if not specified.

Attribute Name Description
businessCategory Business category.
carLicense Vehicle license or registration plate.
cn Common name(s) for which the entity is known by.
dn Distinguished name for which the entity is known by.
departmentNumber Identifies a department within an organization.
description Descriptive information.
destinationIndicator Destination indicator.
displayName Preferred name to be used when displaying entries.
employeeNumber Numerically identifies an employee within an organization.
employeeID Numerically identifies an employee within an organization.
employeeType Type of employment for a person.
facsimileTelephoneNumber Facsimile (Fax) Telephone Number.
givenName First name(s) for which the entity is known by.
memberOf List of groups a user is a member
homePhone Home telephone number.
homePostalAddress Home postal address.
initials Initials of some or all of names, but not the surname(s).
internationaliSDNNumber International ISDN number.
l City.
mail RFC822 Mailbox.
manager Distinguished name of manager.
mobile Mobile telephone number.
o Organization this object belongs to.
ou Organizational unit this object belongs to.
pager Pager telephone number.
physicalDeliveryOfficeName Physical Delivery Office Name.
postOfficeBox Post Office Box.
postalAddress Postal address.
postalCode Postal code.
preferredDeliveryMethod Preferred delivery method.
preferredLanguage Preferred written or spoken language for a person.
registeredAddress Registered postal address.
roomNumber Room number.
secretary Distinguished name of secretary.
seeAlso Distinguished name of related object.
sn The last (family) name for which the entity is known by.
st State or province which this object resides in.
street Street address of this object.
telephoneNumber Telephone Number.
teletexTerminalIdentifier Teletex Terminal Identifier.
telexNumber Telex Number.
title Title associated with the entity.
uid User identifier.
objectClass Object classes of the entity.

Account Attributes (Object Type - userProxyFull)

Attribute Name Description
dn Distinguished name for which the entity is known by (identityAttribute)
sAMAccountName Common name(s) for which the entity is known by (displayAttribute)
displayName Preferred name to be used when displaying entries
givenName First name(s) for which the entity is known by
sn Last (family) name(s) for which the entity is known by
memberOf List of groups a user is a member (Entitlement Attribute, Multivalued, Managed)
mail RFC822 Mailbox
objectSid user identifier

ObjectClass

Attribute Name Description
objectClass Object classes of the entity (Multivalued attribute)

Note

The objectClass must be set to userProxyFull as nativeObjectType. You can add a complete new schema for userProxyFull or modify the existing schema with required attributes.

To change the nativeObjectType in the schema for the account, use the following schema update API call.

PATCH https://sailpoint.api.identitynow.com/beta/sources/:sourceId/schemas/:schemaId

In the body of the PATCH, use form-data as follows:

[
  {
    "op": "replace",
    "path": "/nativeObjectType",
    "value": "userProxyFull"
  }
]

Note

For more information on SailPoint's REST APIs, refer to Best Practices: REST API Authentication and REST API - Update Source Schema (Partial) in the SailPoint Developer Community.

Here's an example of the userProxyFull schema in SailPoint:

{
  "nativeObjectType": "userProxyFull",
  "identityAttribute": "dn",
  "displayAttribute": "cn",
  "hierarchyAttribute": null,
  "includePermissions": false,
  "features": [],
  "configuration": {},
  "attributes": [
    {
      "name": "businessCategory",
      "type": "STRING",
      "schema": null,
      "description": "business category",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "carLicense",
      "type": "STRING",
      "schema": null,
      "description": "vehicle license or registration plate",
      "isMulti": true,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "cn",
      "type": "STRING",
      "schema": null,
      "description": "common name(s) for which the entity is known by",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "dn",
      "type": "STRING",
      "schema": null,
      "description": "distinguished name for which the entity is known by",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "departmentNumber",
      "type": "STRING",
      "schema": null,
      "description": "identifies a department within an organization",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "description",
      "type": "STRING",
      "schema": null,
      "description": "descriptive information",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "destinationIndicator",
      "type": "STRING",
      "schema": null,
      "description": "destination indicator",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "displayName",
      "type": "STRING",
      "schema": null,
      "description": "preferred name to be used when displaying entries",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "employeeNumber",
      "type": "STRING",
      "schema": null,
      "description": "numerically identifies an employee within an\torganization",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "employeeType",
      "type": "STRING",
      "schema": null,
      "description": "type\tof employment for a person",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "facsimileTelephoneNumber",
      "type": "STRING",
      "schema": null,
      "description": "Facsimile (Fax) Telephone Number",
      "isMulti": true,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "givenName",
      "type": "STRING",
      "schema": null,
      "description": "first name(s) for which the entity is known by",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "memberOf",
      "type": "STRING",
      "schema": {
        "type": "CONNECTOR_SCHEMA",
        "id": "d7364aetf456dsggyhj72e83",
        "name": "group"
      },
      "description": "List of groups a user is a member",
      "isMulti": true,
      "isEntitlement": true,
      "isGroup": true
    },
    {
      "name": "homePhone",
      "type": "STRING",
      "schema": null,
      "description": "home telephone number",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "homePostalAddress",
      "type": "STRING",
      "schema": null,
      "description": "home postal address",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "initials",
      "type": "STRING",
      "schema": null,
      "description": "initials of some or all of names, but not the surname(s).",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "internationaliSDNNumber",
      "type": "STRING",
      "schema": null,
      "description": "international ISDN number",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "l",
      "type": "STRING",
      "schema": null,
      "description": "city",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "mail",
      "type": "STRING",
      "schema": null,
      "description": "RFC822 Mailbox",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "manager",
      "type": "STRING",
      "schema": null,
      "description": "DN of manager",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "mobile",
      "type": "STRING",
      "schema": null,
      "description": "mobile telephone number",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "o",
      "type": "STRING",
      "schema": null,
      "description": "organization this object belongs to",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "ou",
      "type": "STRING",
      "schema": null,
      "description": "organizational unit this object belongs to",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "pager",
      "type": "STRING",
      "schema": null,
      "description": "pager telephone number",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "physicalDeliveryOfficeName",
      "type": "STRING",
      "schema": null,
      "description": "Physical Delivery Office Name",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "postOfficeBox",
      "type": "STRING",
      "schema": null,
      "description": "Post Office Box",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "postalAddress",
      "type": "STRING",
      "schema": null,
      "description": "postal address",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "postalCode",
      "type": "STRING",
      "schema": null,
      "description": "postal code",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "preferredDeliveryMethod",
      "type": "STRING",
      "schema": null,
      "description": "preferred delivery method",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "preferredLanguage",
      "type": "STRING",
      "schema": null,
      "description": "preferred written or spoken language for a person",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "registeredAddress",
      "type": "STRING",
      "schema": null,
      "description": "registered postal address",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "roomNumber",
      "type": "STRING",
      "schema": null,
      "description": "room number",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "secretary",
      "type": "STRING",
      "schema": null,
      "description": "DN of secretary",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "seeAlso",
      "type": "STRING",
      "schema": null,
      "description": "DN of related object",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "sn",
      "type": "STRING",
      "schema": null,
      "description": "last (family) name(s) for which the entity is known by",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "st",
      "type": "STRING",
      "schema": null,
      "description": "state or province which this object resides in",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "street",
      "type": "STRING",
      "schema": null,
      "description": "street address of this object",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "telephoneNumber",
      "type": "STRING",
      "schema": null,
      "description": "Telephone Number",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "teletexTerminalIdentifier",
      "type": "STRING",
      "schema": null,
      "description": "Teletex Terminal Identifier",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "telexNumber",
      "type": "STRING",
      "schema": null,
      "description": "Telex Number",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "title",
      "type": "STRING",
      "schema": null,
      "description": "title associated with the entity",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "uid",
      "type": "STRING",
      "schema": null,
      "description": "user identifier",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "objectClass",
      "type": "STRING",
      "schema": null,
      "description": "object classes of the entity",
      "isMulti": true,
      "isEntitlement": false,
      "isGroup": false
    },
    {
      "name": "employeeID",
      "type": "STRING",
      "schema": null,
      "description": "Numerically identifies an employee within an organization",
      "isMulti": false,
      "isEntitlement": false,
      "isGroup": false
    }
  ],
  "id": "ff6af7ef78ttyhgd345dggfac800a782",
  "name": "account",
  "created": "2021-06-02T20:10:71.087Z",
  "modified": "2021-06-02T19:32:93.812Z"
}

Default Entitlement Attributes

Entitlement attributes define the entitlements, such as groups or roles, that can be assigned to the managed system's user accounts. Refer to Managing Entitlements for more information.

Caution

Changing the attribute marked as the Entitlement ID after aggregating accounts or entitlements can result in duplicate entitlements being created, or access profiles and roles breaking. To avoid this, edit the entitlement schema before performing any aggregations.

Default Group Attributes

The Microsoft Lightweight Directory Services connector also supports groups. The following attributes must be configured on the managed system and in the SailPoint source schema to manage groups.

Attribute Name Description
cn Common name(s) for which the entity is known by.
dn Directory Path.
o Organization this object belongs to.
ou Organizational unit this object belongs to.
owner Owner (of the object).
description Descriptive information.

Documentation Feedback

Feedback is provided as an informational resource only and does not form part of SailPoint’s official product documentation. SailPoint does not warrant or make any guarantees about the feedback (including without limitation as to its accuracy, relevance, or reliability). All feedback is subject to the terms set forth at https://developer.sailpoint.com/discuss/tos.