added docs to sidebar

This commit is contained in:
philip-ellis-sp
2022-08-26 17:01:25 -04:00
parent 311b34449a
commit b0935db3c8
150 changed files with 1016 additions and 270 deletions

View File

@@ -1,6 +1,6 @@
--- ---
id: access-request-dynamic-approval id: access-request-dynamic-approval
slug: idn/docs/event-triggers/access-request-dynamic-approval slug: /idn/event-triggers/access-request-dynamic-approval
--- ---
# Access Request Dynamic Approval # Access Request Dynamic Approval

View File

@@ -1,6 +1,6 @@
--- ---
id: access-request-postapproval id: access-request-postapproval
slug: idn/docs/event-triggers/access-request-postapproval slug: /idn/event-triggers/access-request-postapproval
--- ---
# Access Request Postapproval # Access Request Postapproval

View File

@@ -1,6 +1,6 @@
--- ---
id: access-request-preapproval id: access-request-preapproval
slug: idn/docs/event-triggers/access-request-preapproval slug: /idn/event-triggers/access-request-preapproval
--- ---
# Access Request Preapproval # Access Request Preapproval

View File

@@ -1,6 +1,6 @@
--- ---
id: account-aggregation-completed id: account-aggregation-completed
slug: idn/docs/event-triggers/account-aggregation-completed slug: /idn/event-triggers/account-aggregation-completed
--- ---
# Account Aggregation Completed # Account Aggregation Completed

View File

@@ -1,6 +1,6 @@
--- ---
id: identity-attribute-changed id: identity-attribute-changed
slug: idn/docs/event-triggers/identity-attribute-changed slug: /idn/event-triggers/identity-attribute-changed
--- ---
# Identity Attribute Changed # Identity Attribute Changed

View File

@@ -1,6 +1,6 @@
--- ---
id: identity-created id: identity-created
slug: idn/docs/event-triggers/identity-created slug: /idn/event-triggers/identity-created
--- ---
# Identity Created # Identity Created

View File

Before

Width:  |  Height:  |  Size: 135 KiB

After

Width:  |  Height:  |  Size: 135 KiB

View File

Before

Width:  |  Height:  |  Size: 100 KiB

After

Width:  |  Height:  |  Size: 100 KiB

View File

Before

Width:  |  Height:  |  Size: 123 KiB

After

Width:  |  Height:  |  Size: 123 KiB

View File

Before

Width:  |  Height:  |  Size: 97 KiB

After

Width:  |  Height:  |  Size: 97 KiB

View File

Before

Width:  |  Height:  |  Size: 56 KiB

After

Width:  |  Height:  |  Size: 56 KiB

View File

Before

Width:  |  Height:  |  Size: 82 KiB

After

Width:  |  Height:  |  Size: 82 KiB

View File

Before

Width:  |  Height:  |  Size: 114 KiB

After

Width:  |  Height:  |  Size: 114 KiB

View File

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 32 KiB

View File

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View File

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

View File

@@ -1,6 +1,6 @@
--- ---
id: provisioning-action-completed id: provisioning-action-completed
slug: idn/docs/event-triggers/provisioning-action-completed slug: /idn/event-triggers/provisioning-action-completed
--- ---
# Provisioning Action Completed # Provisioning Action Completed

View File

@@ -1,6 +1,6 @@
--- ---
id: saved-search-completed id: saved-search-completed
slug: idn/docs/event-triggers/saved-search-completed slug: /idn/event-triggers/saved-search-completed
--- ---
# Saved Search Completed # Saved Search Completed

View File

@@ -1,6 +1,6 @@
--- ---
id: source-created id: source-created
slug: idn/docs/event-triggers/source-created slug: /idn/event-triggers/source-created
--- ---
# Source Created # Source Created

View File

@@ -1,6 +1,6 @@
--- ---
id: source-deleted id: source-deleted
slug: idn/docs/event-triggers/source-deleted slug: /idn/event-triggers/source-deleted
--- ---
# Source Deleted # Source Deleted

View File

@@ -1,6 +1,6 @@
--- ---
id: source-updated id: source-updated
slug: idn/docs/event-triggers/source-updated slug: /idn/event-triggers/source-updated
--- ---
# Source Updated # Source Updated

View File

@@ -1,6 +1,6 @@
--- ---
id: va-cluster-status-change id: va-cluster-status-change
slug: idn/docs/event-triggers/va-cluster-status-change slug: /idn/event-triggers/va-cluster-status-change
--- ---
# VA Cluster Status Change # VA Cluster Status Change

View File

@@ -1,6 +1,6 @@
--- ---
id: identity-deleted id: identity-deleted
slug: idn/docs/event-triggers/early-access/va-cluster-status-change slug: /idn/event-triggers/early-access/va-cluster-status-change
--- ---
# Identity Deleted # Identity Deleted

View File

@@ -1,6 +1,6 @@
--- ---
id: source-account-created id: source-account-created
slug: idn/docs/event-triggers/early-access/source-account-created slug: /idn/event-triggers/early-access/source-account-created
--- ---
# Source Account Created # Source Account Created

View File

@@ -1,6 +1,6 @@
--- ---
id: source-account-deleted id: source-account-deleted
slug: idn/docs/event-triggers/early-access/source-account-deleted slug: /idn/event-triggers/early-access/source-account-deleted
--- ---
# Source Account Deleted # Source Account Deleted

View File

@@ -1,6 +1,6 @@
--- ---
id: source-account-updated id: source-account-updated
slug: idn/docs/event-triggers/early-access/source-account-updated slug: /idn/event-triggers/early-access/source-account-updated
--- ---
# Source Account Updated # Source Account Updated

View File

@@ -1,6 +1,6 @@
--- ---
id: filtering-events id: filtering-events
slug: idn/docs/event-triggers/getting-started/filtering-events slug: /idn/event-triggers/getting-started/filtering-events
--- ---
# Filtering Events # Filtering Events

View File

@@ -1,6 +1,6 @@
--- ---
id: getting-started id: getting-started
slug: idn/docs/event-triggers/getting-started slug: /idn/event-triggers/getting-started
--- ---
# Getting Started # Getting Started

View File

@@ -1,6 +1,6 @@
--- ---
id: preparing-a-subscriber-service id: preparing-a-subscriber-service
slug: idn/docs/event-triggers/getting-started/preparing-a-subscriber-service slug: /idn/event-triggers/getting-started/preparing-a-subscriber-service
--- ---
# Preparing a Subscriber Service # Preparing a Subscriber Service

View File

@@ -1,6 +1,6 @@
--- ---
id: responding-to-request-response id: responding-to-request-response
slug: idn/docs/event-triggers/getting-started/responding-to-request-response slug: /idn/event-triggers/getting-started/responding-to-request-response
--- ---
# Responding to a Request Response Trigger # Responding to a Request Response Trigger

View File

@@ -1,6 +1,6 @@
--- ---
id: subscribing-to-a-trigger id: subscribing-to-a-trigger
slug: idn/docs/event-triggers/getting-started/subscribing-to-a-trigger slug: /idn/event-triggers/getting-started/subscribing-to-a-trigger
--- ---
# Subscribing to a Trigger # Subscribing to a Trigger

View File

@@ -1,6 +1,6 @@
--- ---
id: testing-triggers id: testing-triggers
slug: idn/docs/event-triggers/getting-started/testing-triggers slug: /idn/event-triggers/getting-started/testing-triggers
--- ---
# Testing Triggers # Testing Triggers

View File

@@ -1,6 +1,6 @@
--- ---
id: trigger-types id: trigger-types
slug: idn/docs/event-triggers/getting-started/trigger-types slug: /idn/event-triggers/getting-started/trigger-types
--- ---
# Trigger Types # Trigger Types

View File

@@ -1,6 +1,6 @@
--- ---
id: authentication id: authentication
slug: idn/docs/getting-started/authentication slug: /idn/getting-started/authentication
--- ---
# Authentication # Authentication

View File

@@ -1,6 +1,6 @@
--- ---
id: getting-started id: getting-started
slug: idn/docs/getting-started slug: /idn/getting-started
--- ---
# Getting Started with SailPoint APIs # Getting Started with SailPoint APIs

View File

@@ -1,6 +1,6 @@
--- ---
id: standard-collection-parameters id: standard-collection-parameters
slug: idn/docs/getting-started/standard-collection-parameters slug: /idn/getting-started/standard-collection-parameters
--- ---
# Standard Collection Parameters # Standard Collection Parameters

View File

@@ -1,6 +1,6 @@
--- ---
id: saas-configuration id: saas-configuration
slug: idn/docs/saas-configuration slug: /idn/saas-configuration
--- ---
# Overview # Overview

View File

@@ -1,6 +1,6 @@
--- ---
id: account-create id: account-create
slug: idn/docs/saas-connectivity/commands/account-create slug: /idn/saas-connectivity/commands/account-create
--- ---
# Account Create # Account Create
@@ -54,7 +54,7 @@ The account create command accepts a provisioning plan from IDN and creates the
You can create the provisioning plan through the ```accountCreateTemplate``` in the ```connector-spec.json``` file, and you can also modify its behavior in IDN using the create profile screen: You can create the provisioning plan through the ```accountCreateTemplate``` in the ```connector-spec.json``` file, and you can also modify its behavior in IDN using the create profile screen:
![Account Create](../../img/custom_connectors/commands/account_create/account_create_idn.png) ![Account Create](./img/account_create_idn.png)
Create Profile provides the instructions for the provisioning plan and determines which attributes are sent to your connector code. For example, if all the account attributes in the preceding image are configured for a value, then the following JSON payload is sent to your connector: Create Profile provides the instructions for the provisioning plan and determines which attributes are sent to your connector code. For example, if all the account attributes in the preceding image are configured for a value, then the following JSON payload is sent to your connector:
@@ -175,7 +175,7 @@ There are two ways you can generate random passwords:
1. Use the “Create Password” generator in Create Profile. (This can also be configured in the ```accountCreateTemplate```) 1. Use the “Create Password” generator in Create Profile. (This can also be configured in the ```accountCreateTemplate```)
![Create Password](../../img/custom_connectors/commands/account_create/create_password_idn.png) ![Create Password](./img/create_password_idn.png)
2. Disable the 'password' field. 2. Disable the 'password' field.
@@ -209,14 +209,14 @@ async createAccount(input: StdAccountCreateInput): Promise<AirtableAccount> {
One way to test whether the account create code works in IDN is to set up an access profile and role that grants members an entitlement from the connectors target source. Start by creating an access profile that grants one or more entitlements from the target source. One way to test whether the account create code works in IDN is to set up an access profile and role that grants members an entitlement from the connectors target source. Start by creating an access profile that grants one or more entitlements from the target source.
![Testing 1](../../img/custom_connectors/commands/account_create/testing1.png) ![Testing 1](./img/testing1.png)
Next, create a role that uses the access profile created in the previous step. Next, create a role that uses the access profile created in the previous step.
![Testing 2](../../img/custom_connectors/commands/account_create/testing2.png) ![Testing 2](./img/testing2.png)
Modify the role membership to use Identity List and select one or more users that do not have accounts in the target source yet. Modify the role membership to use Identity List and select one or more users that do not have accounts in the target source yet.
![Testing 3](../../img/custom_connectors/commands/account_create/testing3.png) ![Testing 3](./img/testing3.png)
Click the Update button in the upper right corner to initiate the account provisioning process. Doing so creates the account(s) on the target source once the process is complete. Click the Update button in the upper right corner to initiate the account provisioning process. Doing so creates the account(s) on the target source once the process is complete.

View File

@@ -1,6 +1,6 @@
--- ---
id: account-delete id: account-delete
slug: idn/docs/saas-connectivity/commands/account-delete slug: /idn/saas-connectivity/commands/account-delete
--- ---
# Account Delete # Account Delete

View File

@@ -1,6 +1,6 @@
--- ---
id: account-discover id: account-discover
slug: idn/docs/saas-connectivity/commands/account-discover slug: /idn/saas-connectivity/commands/account-discover
--- ---
# Account Discover Schema # Account Discover Schema
@@ -336,16 +336,16 @@ There are many properties in this payload, so you may want to remove some, but i
## Test in IdentityNow ## Test in IdentityNow
To test the account discover schema command in IDN, ensure that you upload your latest connector code and create a new source in IDN. After you configure and test your source connection, go to the Account Schema page. You will see an empty schema. To test the account discover schema command in IDN, ensure that you upload your latest connector code and create a new source in IDN. After you configure and test your source connection, go to the Account Schema page. You will see an empty schema.
![Discover Schema 1](../../img/custom_connectors/commands/discover_schema/discover_schema_idn1.png) ![Discover Schema 1](./img/discover_schema_idn1.png)
To discover the schema for this source, click the Options dropdown in the upper right and select Discover Schema. To discover the schema for this source, click the Options dropdown in the upper right and select Discover Schema.
![Discover Schema 2](../../img/custom_connectors/commands/discover_schema/discover_schema_idn2.png) ![Discover Schema 2](./img/discover_schema_idn2.png)
IDN then asks you to assign attributes to Account ID and 'Account Name.' IDN then asks you to assign attributes to Account ID and 'Account Name.'
![Discover Schema 3](../../img/custom_connectors/commands/discover_schema/discover_schema_idn3.png) ![Discover Schema 3](./img/discover_schema_idn3.png)
Save the schema. You now have a populated account schema. A user of this source must provide further details, like descriptions and identifying which attributes are entitlements. Save the schema. You now have a populated account schema. A user of this source must provide further details, like descriptions and identifying which attributes are entitlements.
![Discover Schema 4](../../img/custom_connectors/commands/discover_schema/discover_schema_idn4.png) ![Discover Schema 4](./img/discover_schema_idn4.png)

View File

@@ -1,6 +1,6 @@
--- ---
id: account-enable id: account-enable
slug: idn/docs/saas-connectivity/commands/account-enable slug: /idn/saas-connectivity/commands/account-enable
--- ---
# Account Enable/Disable # Account Enable/Disable

View File

@@ -1,6 +1,6 @@
--- ---
id: account-list id: account-list
slug: idn/docs/saas-connectivity/commands/account-list slug: /idn/saas-connectivity/commands/account-list
--- ---
# Account List # Account List
@@ -34,7 +34,7 @@ slug: idn/docs/saas-connectivity/commands/account-list
## Description ## Description
The account list command aggregates all accounts from the target source into IdentityNow. IDN calls this command during a manual or scheduled account aggregation. The account list command aggregates all accounts from the target source into IdentityNow. IDN calls this command during a manual or scheduled account aggregation.
![Account List](../../img/custom_connectors/commands/account_list/account_list_idn.png) ![Account List](./img/account_list_idn.png)
## Implementation ## Implementation
For you to be able to implement this endpoint, the web service must expose an API for listing user accounts and entitlements (i.e. roles or groups). Sometimes, a target sources API has a single endpoint providing all the attributes and entitlements a source account contains. However, some APIs may break these attributes and entitlements into separate API endpoints, requiring you to make multiple calls to gather all an account's necessary data. The following code from [airtable.ts](https://github.com/sailpoint-oss/airtable-example-connector/blob/main/src/airtable.ts) shows the necessary steps to create a complete account from the various endpoints the API offers: For you to be able to implement this endpoint, the web service must expose an API for listing user accounts and entitlements (i.e. roles or groups). Sometimes, a target sources API has a single endpoint providing all the attributes and entitlements a source account contains. However, some APIs may break these attributes and entitlements into separate API endpoints, requiring you to make multiple calls to gather all an account's necessary data. The following code from [airtable.ts](https://github.com/sailpoint-oss/airtable-example-connector/blob/main/src/airtable.ts) shows the necessary steps to create a complete account from the various endpoints the API offers:

View File

@@ -1,6 +1,6 @@
--- ---
id: account-read id: account-read
slug: idn/docs/saas-connectivity/commands/account-read slug: /idn/saas-connectivity/commands/account-read
--- ---
# Account Read # Account Read
@@ -41,7 +41,7 @@ slug: idn/docs/saas-connectivity/commands/account-read
## Description ## Description
The account read command aggregates a single account from the target source into IdentityNow. IDN can call this command during a “one-off” account refresh, which you can trigger by aggregating an individual account in IDN. The account read command aggregates a single account from the target source into IdentityNow. IDN can call this command during a “one-off” account refresh, which you can trigger by aggregating an individual account in IDN.
![Account Read](../../img/custom_connectors/commands/account_read/account_read_idn.png) ![Account Read](./img/account_read_idn.png)
## Implementation ## Implementation
Implementation of account read is similar to account list's implementation, except the code only needs to get one account, not all the accounts. The following snippet is from [airtable.ts](https://github.com/sailpoint-oss/airtable-example-connector/blob/main/src/airtable.ts): Implementation of account read is similar to account list's implementation, except the code only needs to get one account, not all the accounts. The following snippet is from [airtable.ts](https://github.com/sailpoint-oss/airtable-example-connector/blob/main/src/airtable.ts):

View File

@@ -1,6 +1,6 @@
--- ---
id: account-unlock id: account-unlock
slug: idn/docs/saas-connectivity/commands/account-unlock slug: /idn/saas-connectivity/commands/account-unlock
--- ---
# Account Unlock # Account Unlock

View File

@@ -1,6 +1,6 @@
--- ---
id: account-update id: account-update
slug: idn/docs/saas-connectivity/commands/account-update slug: /idn/saas-connectivity/commands/account-update
--- ---
# Account Update # Account Update

View File

@@ -1,6 +1,6 @@
--- ---
id: entitlement-list id: entitlement-list
slug: idn/docs/saas-connectivity/commands/entitlement-list slug: /idn/saas-connectivity/commands/entitlement-list
--- ---
# Entitlement List # Entitlement List
@@ -34,7 +34,7 @@ slug: idn/docs/saas-connectivity/commands/entitlement-list
The entitlement list command triggers during a manual or scheduled entitlement aggregation operation within IDN. This operation gathers a list of all entitlements available on the target source, usually multi-valued entitlements like groups or roles. This operation provides IDN administrators with a list of entitlements available on the source so they can create access profiles and roles accordingly, and it provides IDN with more details about the entitlements. The entitlement schemas minimum requirements are name and ID, but you can add other values, such as created date, updated date, status, etc. The entitlement list command triggers during a manual or scheduled entitlement aggregation operation within IDN. This operation gathers a list of all entitlements available on the target source, usually multi-valued entitlements like groups or roles. This operation provides IDN administrators with a list of entitlements available on the source so they can create access profiles and roles accordingly, and it provides IDN with more details about the entitlements. The entitlement schemas minimum requirements are name and ID, but you can add other values, such as created date, updated date, status, etc.
![Discover Schema 4](../../img/custom_connectors/commands/entitlement_list/entitlement_list_idn.png) ![Discover Schema 4](./img/entitlement_list_idn.png)
## Defining the Schema ## Defining the Schema
The entitlement schema is defined in the [connector-spec.json](https://github.com/sailpoint-oss/airtable-example-connector/blob/main/connector-spec.json) file. Currently, only the multi-valued “group” type is supported. The following values are the minimum requirements, but you can add more attributes. The entitlement schema is defined in the [connector-spec.json](https://github.com/sailpoint-oss/airtable-example-connector/blob/main/connector-spec.json) file. Currently, only the multi-valued “group” type is supported. The following values are the minimum requirements, but you can add more attributes.

View File

@@ -1,6 +1,6 @@
--- ---
id: entitlement-read id: entitlement-read
slug: idn/docs/saas-connectivity/commands/entitlement-read slug: /idn/saas-connectivity/commands/entitlement-read
--- ---
# Entitlement Read # Entitlement Read

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 129 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 131 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 121 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 484 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 132 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 133 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

View File

@@ -1,6 +1,6 @@
--- ---
id: test-connection id: test-connection
slug: idn/docs/saas-connectivity/commands/test-connection slug: /idn/saas-connectivity/commands/test-connection
--- ---
# Test Connection # Test Connection
@@ -19,7 +19,7 @@ The test connection command ensures the connector can communicate with the targe
Use Test Connection in the IDN UI after an admin has finished entering configuration information for a new instance of the connector. Use Test Connection in the IDN UI after an admin has finished entering configuration information for a new instance of the connector.
![Test Connection](../../img/custom_connectors/commands/test_connection/test_command_idn.png) ![Test Connection](./img/test_command_idn.png)
## Implementation ## Implementation
In [index.ts](https://github.com/sailpoint-oss/airtable-example-connector/blob/main/src/index.ts), add the test connection function handler to your connector. Within this function, send a simple request to your web service to ensure the connection works. The web service this connector targets has a JavaScript SDK, so define your own function like the following example to test the connection: In [index.ts](https://github.com/sailpoint-oss/airtable-example-connector/blob/main/src/index.ts), add the test connection function handler to your connector. Within this function, send a simple request to your web service to ensure the connection works. The web service this connector targets has a JavaScript SDK, so define your own function like the following example to test the connection:

View File

@@ -1,6 +1,6 @@
--- ---
id: cli-common-commands id: cli-common-commands
slug: idn/docs/saas-connectivity/getting-started/cli-common-commands slug: /idn/saas-connectivity/getting-started/cli-common-commands
--- ---
# Common CLI/SDK Commands # Common CLI/SDK Commands

View File

@@ -1,6 +1,6 @@
--- ---
id: cli id: cli
slug: idn/docs/saas-connectivity/getting-started/cli slug: /idn/saas-connectivity/getting-started/cli
--- ---
# Getting Started with the CLI # Getting Started with the CLI

View File

@@ -1,6 +1,6 @@
--- ---
id: cli-test-build-deploy id: cli-test-build-deploy
slug: idn/docs/saas-connectivity/getting-started/cli-test-build-deploy slug: /idn/saas-connectivity/getting-started/cli-test-build-deploy
--- ---
# Test, Build, and Deploy Using the CLI # Test, Build, and Deploy Using the CLI
## Testing Your Connector ## Testing Your Connector

View File

@@ -1,6 +1,6 @@
--- ---
id: connector-spec id: connector-spec
slug: idn/docs/saas-connectivity/getting-started/connector-spec slug: /idn/saas-connectivity/getting-started/connector-spec
--- ---
# Connector specification file (connector-spec.json) # Connector specification file (connector-spec.json)

View File

@@ -1,6 +1,6 @@
--- ---
id: example-connectors id: example-connectors
slug: idn/docs/saas-connectivity/getting-started/example-connectors slug: /idn/saas-connectivity/getting-started/example-connectors
--- ---
# Example Connectors # Example Connectors

View File

@@ -1,6 +1,6 @@
--- ---
id: getting-started id: getting-started
slug: idn/docs/saas-connectivity/getting-started slug: /idn/saas-connectivity/getting-started
--- ---
# SaaS Connectivity # SaaS Connectivity
@@ -14,7 +14,7 @@ Connectors are the bridges between the SailPoint Identity Now (IDN) SaaS platfor
VA connectors always communicate with external sources through the Virtual Appliance (VA) as seen in the diagram below: VA connectors always communicate with external sources through the Virtual Appliance (VA) as seen in the diagram below:
![Old Connectivity](../img/custom_connectors/old_connectivity_diagram.png) ![Old Connectivity](./img/old_connectivity_diagram.png)
VA connectors can be disadvantageous because you need an on-prem virtual appliance to have any external connectivity with them, even when that connectivity is a SaaS service like Salesforce.com. VA connectors can be disadvantageous because you need an on-prem virtual appliance to have any external connectivity with them, even when that connectivity is a SaaS service like Salesforce.com.
@@ -22,6 +22,6 @@ It is also challenging to create a custom connector in the VA Connector framewor
The new Cloud connectors work differently - they run on the IDN platform instead (see diagram below). The new Cloud connectors work differently - they run on the IDN platform instead (see diagram below).
![New Connectivity](../img/custom_connectors/new_connectivity_diagram.png) ![New Connectivity](./img/new_connectivity_diagram.png)
With this process, you can run an entire IDN instance without a VA. The new connector also includes a CLI tool to manage cloud connectors and an SDK to create custom connectors. Because it is simpler to create a custom connector, you can create specific connectors for a variety of sources, and the connectors' configuration can be much simpler. For example, you can now configure a formerly complicated webservice connector by providing two parameters (Base URL and API Key) in a custom cloud connector. With this process, you can run an entire IDN instance without a VA. The new connector also includes a CLI tool to manage cloud connectors and an SDK to create custom connectors. Because it is simpler to create a custom connector, you can create specific connectors for a variety of sources, and the connectors' configuration can be much simpler. For example, you can now configure a formerly complicated webservice connector by providing two parameters (Base URL and API Key) in a custom cloud connector.

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

View File

@@ -1,6 +1,6 @@
--- ---
id: postman-collection id: postman-collection
slug: idn/docs/saas-connectivity/getting-started/postman-collection slug: /idn/saas-connectivity/getting-started/postman-collection
--- ---
# Postman Collection # Postman Collection

View File

@@ -1,6 +1,6 @@
--- ---
id: api-calls id: api-calls
slug: idn/docs/saas-connectivity/in-depth/api-calls slug: /idn/saas-connectivity/in-depth/api-calls
--- ---
# API Calls # API Calls
Calling API endpoints sequentially for hundreds or thousands of accounts is slow. If several API calls are required to build a users account, then it is recommended that you use asynchronous functions to speed up this task. Asynchronous functions allow your program to execute several commands at once, which is especially important for high latency commands like calling API endpoints - each call to an endpoint can take anywhere from several milliseconds to several seconds. The following code snippet from [discourse-client.ts](https://github.com/sailpoint-oss/discourse-connector-2/blob/main/Discourse/src/discourse-client.ts) shows how you can use asynchronous functions to quickly build a list of account profiles for your sources users: Calling API endpoints sequentially for hundreds or thousands of accounts is slow. If several API calls are required to build a users account, then it is recommended that you use asynchronous functions to speed up this task. Asynchronous functions allow your program to execute several commands at once, which is especially important for high latency commands like calling API endpoints - each call to an endpoint can take anywhere from several milliseconds to several seconds. The following code snippet from [discourse-client.ts](https://github.com/sailpoint-oss/discourse-connector-2/blob/main/Discourse/src/discourse-client.ts) shows how you can use asynchronous functions to quickly build a list of account profiles for your sources users:

View File

@@ -1,6 +1,6 @@
--- ---
id: debugging id: debugging
slug: idn/docs/saas-connectivity/in-depth/debugging slug: /idn/saas-connectivity/in-depth/debugging
--- ---
# Debugging # Debugging
@@ -38,7 +38,7 @@ In VS Code, open a javascript debug terminal window and run the npm run dev comm
```npm run dev``` ```npm run dev```
Now you can set breakpoints in your typescript files in VS Code: Now you can set breakpoints in your typescript files in VS Code:
![debugging 1](../../img/custom_connectors/in_depth/debugging1.png) ![debugging 1](./img/debugging1.png)
### Debug through the VS Code Debug configuration ### Debug through the VS Code Debug configuration
To simplify the debugging process, you can consolidate the debugging steps into a VS Code launch configuration. The following snippet is an example of how you would do so: To simplify the debugging process, you can consolidate the debugging steps into a VS Code launch configuration. The following snippet is an example of how you would do so:
@@ -75,7 +75,7 @@ To simplify the debugging process, you can consolidate the debugging steps into
With these configurations set, you can run the debugger by selecting the options shown in the following image: With these configurations set, you can run the debugger by selecting the options shown in the following image:
![debugging 2](../../img/custom_connectors/in_depth/debugging2.png) ![debugging 2](./img/debugging2.png)
## Debug in IdentityNow ## Debug in IdentityNow
You can use the ```sp conn logs``` command to gain insight into how your connector is performing while running in IDN. See the section on logging for more information. You can use the ```sp conn logs``` command to gain insight into how your connector is performing while running in IDN. See the section on logging for more information.

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

View File

@@ -1,6 +1,6 @@
--- ---
id: linting id: linting
slug: idn/docs/saas-connectivity/in-depth/linting slug: /idn/saas-connectivity/in-depth/linting
--- ---
# Linting # Linting
To add linting to your project, simple install the linter using NPM: To add linting to your project, simple install the linter using NPM:

View File

@@ -1,6 +1,6 @@
--- ---
id: logging id: logging
slug: idn/docs/saas-connectivity/in-depth/logging slug: /idn/saas-connectivity/in-depth/logging
--- ---
# Logging # Logging

View File

@@ -1,6 +1,6 @@
--- ---
id: testing id: testing
slug: idn/docs/saas-connectivity/in-depth/testing slug: /idn/saas-connectivity/in-depth/testing
--- ---
# Testing # Testing
@@ -33,8 +33,8 @@ Ran all test suites.
``` ```
You can also view the results in an html report by viewing the ```index.html``` file inside the ```coverage/lcov-report``` folder: You can also view the results in an html report by viewing the ```index.html``` file inside the ```coverage/lcov-report``` folder:
![Account List](../../img/custom_connectors/in_depth/testing1.png) ![Account List](./img/testing1.png)
![Account List](../../img/custom_connectors/in_depth/testing2.png) ![Account List](./img/testing2.png)
## Testing Techniques ## Testing Techniques

View File

@@ -1,6 +1,6 @@
--- ---
id: building-transforms id: building-transforms
slug: idn/docs/transforms/getting-started slug: /idn/transforms/getting-started
--- ---
# Building Transforms in IdentityNow # Building Transforms in IdentityNow
@@ -10,7 +10,7 @@ In SailPoint's cloud services, transforms allow you to manipulate attribute valu
Transforms are configurable objects that define easy ways to manipulate attribute data without requiring you to write code. Transforms are configurable building blocks with sets of inputs and outputs: Transforms are configurable objects that define easy ways to manipulate attribute data without requiring you to write code. Transforms are configurable building blocks with sets of inputs and outputs:
![What are Transforms 1](../../img/transforms/what_are_transforms_1.png) ![What are Transforms 1](./img/what_are_transforms_1.png)
Because there is no code to write, an administrator can configure these using a JSON object structure and uploading them into IdentityNow using [IdentityNow's Transform REST APIs](https://developer.sailpoint.com/apis/v3/#tag/Transforms). Because there is no code to write, an administrator can configure these using a JSON object structure and uploading them into IdentityNow using [IdentityNow's Transform REST APIs](https://developer.sailpoint.com/apis/v3/#tag/Transforms).
@@ -22,17 +22,17 @@ Transforms typically have an input(s) and output(s). The way the transformation
For example, a [Lower transform](../transform_operations/operations/lower.md) transforms any input text strings into lowercase versions as output. So if the input were "Foo", the lower case output of the transform would be "foo": For example, a [Lower transform](../transform_operations/operations/lower.md) transforms any input text strings into lowercase versions as output. So if the input were "Foo", the lower case output of the transform would be "foo":
![How Transforms Work 1](../../img/transforms/how_transforms_work_1.png) ![How Transforms Work 1](./img/how_transforms_work_1.png)
There are other types of transforms too. For example an [E.164 Phone transform](../transform_operations/operations/e164_phone.md) transforms any input phone number strings into an E.164 formatted version as output. So if the input were "(512) 346-2000" the output would be "+1 5123462000": There are other types of transforms too. For example an [E.164 Phone transform](../transform_operations/operations/e164_phone.md) transforms any input phone number strings into an E.164 formatted version as output. So if the input were "(512) 346-2000" the output would be "+1 5123462000":
![How Transforms Work 2](../../img/transforms/how_transforms_work_2.png) ![How Transforms Work 2](./img/how_transforms_work_2.png)
### Multiple Transform Inputs ### Multiple Transform Inputs
In the previous examples, each transform had a single input. Some transforms can specify more than one input. For example, the [Concat transform](../transform_operations/operations/concatenation.md) concatenates one or more strings together. If "Foo" and "Bar" were inputs, the transformed output would be "FooBar": In the previous examples, each transform had a single input. Some transforms can specify more than one input. For example, the [Concat transform](../transform_operations/operations/concatenation.md) concatenates one or more strings together. If "Foo" and "Bar" were inputs, the transformed output would be "FooBar":
![How Transforms Work 3](../../img/transforms/how_transforms_work_3.png) ![How Transforms Work 3](./img/how_transforms_work_3.png)
### Complex Nested Transforms ### Complex Nested Transforms
@@ -40,7 +40,7 @@ For more complex use cases, a single transform may not be enough. It is possible
An example of a nested transform would be using the previous [Concat transform](../transform_operations/operations/concatenation.md) and passing its output as an input to another [Lower transform](../transform_operations/operations/lower.md). If the inputs "Foo" and "Bar" were passed into the transforms, the ultimate output would be "foobar," concatenated and lower-cased. An example of a nested transform would be using the previous [Concat transform](../transform_operations/operations/concatenation.md) and passing its output as an input to another [Lower transform](../transform_operations/operations/lower.md). If the inputs "Foo" and "Bar" were passed into the transforms, the ultimate output would be "foobar," concatenated and lower-cased.
![How Transforms Work 4](../../img/transforms/how_transforms_work_4.png) ![How Transforms Work 4](./img/how_transforms_work_4.png)
There is no hard limit for the number of transforms that can be nested. However, the more transforms applied, the more complex the nested transform will be, which can make it difficult to understand and maintain. There is no hard limit for the number of transforms that can be nested. However, the more transforms applied, the more complex the nested transform will be, which can make it difficult to understand and maintain.
@@ -50,7 +50,7 @@ Some transforms can specify an attributes map that configures the transform beha
It is possible to extend the earlier complex nested transform example. If a Replace transform, which replaces certain strings with replacement text, were added, and the transform were configured to replace "Bar with "Baz," the output would be added as an input to the Concat and Lower transforms: It is possible to extend the earlier complex nested transform example. If a Replace transform, which replaces certain strings with replacement text, were added, and the transform were configured to replace "Bar with "Baz," the output would be added as an input to the Concat and Lower transforms:
![Configuring Transform Behavior 1](../../img/transforms/configuring_transform_behavior_1.png) ![Configuring Transform Behavior 1](./img/configuring_transform_behavior_1.png)
The output of the Replace transform would be "Baz," which is then passed as an input to the Concat transform along with "Foo," producing an output of "FooBaz." This is then passed as an input into the Lower transform, producing a final output of "foobaz." The output of the Replace transform would be "Baz," which is then passed as an input to the Concat transform along with "Foo," producing an output of "FooBaz." This is then passed as an input into the Lower transform, producing a final output of "foobaz."
@@ -89,7 +89,7 @@ The following two examples explain how a transform with an implicit or explicit
An identity profile is configured the following way: An identity profile is configured the following way:
![Configuring Transform Behavior 2](../../img/transforms/configuring_transform_behavior_2.png) ![Configuring Transform Behavior 2](./img/configuring_transform_behavior_2.png)
As an example, the "Lowercase Department" transform being used is written the following way: As an example, the "Lowercase Department" transform being used is written the following way:

View File

@@ -1,6 +1,6 @@
--- ---
id: creating-your-first-transform id: creating-your-first-transform
slug: idn/docs/transforms/creating-your-first-transform slug: /idn/transforms/creating-your-first-transform
--- ---
# Creating Your First Transform # Creating Your First Transform
@@ -113,7 +113,7 @@ curl --location --request POST 'https://{tenant}.api.identitynow.com/v3/transfor
Once you have created the transform, you can find it in IdentityNow by going to **Admin** > **Identities** > **Identity Profiles** > (An Identity Profile) > **Mappings** (tab). Once you have created the transform, you can find it in IdentityNow by going to **Admin** > **Identities** > **Identity Profiles** > (An Identity Profile) > **Mappings** (tab).
![Mappings Tab](../../img/transforms/mappings_tab.png) ![Mappings Tab](./img/mappings_tab.png)
For more information about creating transforms, see [Create Transform](https://developer.sailpoint.com/apis/v3/#operation/createTransform). For more information about creating transforms, see [Create Transform](https://developer.sailpoint.com/apis/v3/#operation/createTransform).

Binary file not shown.

After

Width:  |  Height:  |  Size: 188 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 200 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 103 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Some files were not shown because too many files have changed in this diff Show More