Skip to content

Commit 663827e

Browse files
authored
Merge branch 'main' into docs-1142-https-token-based-auth
2 parents e23390f + f38cfda commit 663827e

File tree

3 files changed

+48
-103
lines changed

3 files changed

+48
-103
lines changed

docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/workday-source.md

Lines changed: 44 additions & 97 deletions
Original file line numberDiff line numberDiff line change
@@ -39,61 +39,30 @@ By default, the collection starts from the current date and time, but this setti
3939

4040
This section demonstrates how to configure the Workday portal to integrate with Sumo Logic’s collection scripts. Configuring the Workday portal involves the following steps:
4141

42-
#### Step 1: Create an Integration System User
43-
44-
1. Access the **Create Integration System User** task and provide the following parameters:
45-
* **User Name.** SumoLogic_ISU.
46-
* **New Password and New Password Verify.** Enter the password.
47-
* **Do Not Allow UI Sessions.** Check the box.
48-
* **Session Timeout Minutes.** 0 (Disable session expiration).
49-
2. Click **OK**.
50-
3. Exempt the created user from the password expiration rule.
51-
* Access **Maintain Password Rules** task.
52-
* Add the users to **System Users exempt from password expiration**.
53-
54-
#### Step 2: Create a Security Group
55-
56-
1. To create a security group, access the **Create Security Group** task and provide the following parameters:
57-
* **Type of Tenanted Security Group.** Integration System Security Group (Unconstrained)
58-
* **Name.** SumoLogic Client Security Group.
59-
1. Click **OK**.
60-
1. In the **Edit Integration System Security Group (Unconstrained)** window provide the following parameters:
61-
* **Integration System Users**. SumoLogic_ISU.
62-
* **Comment (Optional)**. Provide a short description.
63-
1. Click **OK**.
64-
1. To attach the security group to a domain, access the **View Domain** task for the domain System Auditing.
65-
1. Select **Domain > Edit Security Policy Permissions** from the **System Auditing** related **Actions** menu.
66-
1. Add the SumoLogic Client Security Group you created to both the tables as below:
67-
* **Report/Task Permissions table.** View access.
68-
* **Integration Permissions table**. Get access.
69-
1. Click **OK**.
70-
1. To apply policy changes, access the **Activate Pending Security Policy Changes** task and activate the changes you made.
71-
1. Click **OK**.
72-
73-
#### Step 3: Register the API Client
42+
#### Step 1: Register the API client
7443

7544
1. To register the API client, access the **Register API Client** **for Integrations** task, and provide the following parameters:
7645
* **Client Name.** Sumo Logic Workday Collector
77-
* **Non-Expiring Refresh Tokens.** Yes.
78-
* **Scope.** System.
46+
* **Non-Expiring Refresh Tokens.** Yes
47+
* **Scope.** System
7948
2. Click **OK**.
8049
3. Copy the **Client Secret** and **Client ID** before you navigate away from the page and store it securely. If you lose the **Client Secret**, you can generate a new one using the **Generate New API Client Secret** task.
8150
4. Click **Done**.
8251
5. To generate a refresh token, access the **View API Clients** task and copy the below two parameters from the top of the page:
83-
* **Workday REST API Endpoint.** The endpoint to use access to the resources in your Tenant.
84-
* **Token Endpoint**. The endpoint used to exchange an authorization code for a token (if you configure authorization code grant).
85-
6. Go to the **API Clients for Integrations** tab, hover on the **“Sumo Logic Workday Collector API”** client, and click on the three-dot kebab action buttons.
86-
7. In the new pop up window, click **API Client** > Manage Refresh Token for Integrations.
52+
* **Workday REST API Endpoint.** The endpoint to use for access to the resources in your tenant.
53+
* **Token Endpoint**. The endpoint used to exchange an authorization code for a token (if you configure an authorization code grant).
54+
6. Go to the **API Clients for Integrations** tab, hover on the **“Sumo Logic Workday Collector API”** client, and click on the three-dot kebab action button.
55+
7. In the new pop up window, click **API Client > Manage Refresh Token for Integrations**.
8756
8. In the **Manage Refresh Token for Integrations** window, select **“SumoLogic_ISU”** in the **Workday Account** field and click **OK**.
88-
9. In the newly opened window, select **Generate New Refresh Token** checkbox and click **OK**.
57+
9. In the newly opened window, select the **Generate New Refresh Token** checkbox and click **OK**.
8958
10. Copy the value of the **Refresh Token** column from the opened window and click **Done**.
9059

91-
#### Step 4: Enable your tenant to send data
60+
#### Step 2: Enable your tenant to send data
9261

9362
1. To enable your Tenant to send data, access the **Edit Tenant Setup - System** task and ensure that the **Enable User Activity Logging** checkbox is selected.
9463
2. Access the **Edit Tenant Setup - Security** task and ensure that the **OAuth 2.0 Clients Enabled** checkbox is selected.
9564

96-
#### Step 5: Create a Custom sign on report
65+
#### Step 3: Create a Custom sign on report
9766

9867
For customers that do not make use of the Recruiting Functional Area, the standard Candidate Signon report may not be available. The alternative is to create a new custom report with **Data Source = “All System Account Signons”** and **Data Source Filter** = **“Workday System Account Signons in Range”**. You can configure the fields using [Excel](https://appdev-readme-resources.s3.amazonaws.com/Workday/Signons_and_Attempted_Signons_-_Copy.xlsx).
9968

@@ -113,8 +82,7 @@ For customers that do not make use of the Recruiting Functional Area, the standa
11382
* Browser Type
11483
* Device is Trusted
11584
6. Remove the text in the **Column Heading Override** column, for **Field > Session ID** and **Field > System Account**. After configuring all the fields you can verify all the fields using the [Excel](https://appdev-readme-resources.s3.amazonaws.com/Workday/Signons_and_Attempted_Signons_-_Copy.xlsx).
116-
7. If you're configuring the [Cloud-to-Cloud Collector Source](/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/workday-source/), Go to the **Prompts** tab and look for the **Do Not Prompt at Runtime** column under the **Prompts Defaults** table. Make sure that checkboxes are disabled for the **From_Moment** and **To_Moment** rows.
117-
<img src={useBaseUrl('img/integrations/saas-cloud/Workday-SignOn-Report-Prompts-Tab.png')} alt="workday custom sign-on report prompt tab" style={{border: '1px solid gray'}} />
85+
7. If you're configuring Workday Source, go to the **Prompts** tab and look for the **Do Not Prompt at Runtime** column under the **Prompts Defaults** table. Make sure that checkboxes are disabled for the **From_Moment** and **To_Moment** rows.<br/><img src={useBaseUrl('img/integrations/saas-cloud/Workday-SignOn-Report-Prompts-Tab.png')} alt="workday custom sign-on report prompt tab" style={{border: '1px solid gray'}} />
11886
8. Go to the **Advanced** tab and click the **Enable As Web Service** checkbox under **Web Service Options**.
11987
9. Go to the **Share** tab, enable **Share with specific users and groups** option, add **SumoLogic_ISU** in the **Authorized Users** field, and click **OK**.
12088
10. Click **Done**. You can also test it by clicking the **Run** button.
@@ -124,7 +92,7 @@ For customers that do not make use of the Recruiting Functional Area, the standa
12492

12593
### Source configuration
12694

127-
When you create a Citrix Cloud Source, you add it to a Hosted Collector. Before creating the Source, identify the Hosted Collector you want to use or create a new Hosted Collector. For instructions, see [Configure a Hosted Collector](/docs/send-data/hosted-collectors/configure-hosted-collector).
95+
When you create a Citrix Cloud Source, you add it to a Hosted Collector. Before creating the Source, identify the Hosted Collector you want to use or create a new Hosted Collector. For instructions, see [Configure a Hosted Collector and Source](/docs/send-data/hosted-collectors/configure-hosted-collector).
12896

12997
To configure a Workday Source, follow the steps below:
13098

@@ -137,20 +105,18 @@ To configure a Workday Source, follow the steps below:
137105
7. **Fields** (Optional). Click the **+Add** field link to define the fields you want to associate. Each field needs a name (key) and value.
138106
* <img src={useBaseUrl('img/reuse/green-check-circle.png')} alt="green check circle.png" width="20"/> A green circle with a checkmark is shown when the field exists in the Fields table schema.
139107
* <img src={useBaseUrl('img/reuse/orange-exclamation-point.png')} alt="orange exclamation point.png" width="20"/> An orange triangle with an exclamation point is shown when the field doesn't exist in the Fields table schema. In this case, you'll see an option to automatically add or enable the nonexistent fields to the Fields table schema. If a field is sent to Sumo Logic but isn’t present or enabled in the schema, it’s ignored and marked as **Dropped**.
140-
8. **SignOn Report URL**. Paste the SignOn Report URL from the [Vendor configuration: Step 5](#step-5-create-a-custom-sign-on-report).
141-
9. **Integration System User Name**. Name of the account (SumoLogic_ISU) created in [Vendor configuration: Step 1](#step-1-create-an-integration-system-user).
142-
10. **Integration System User Password**. The password of the account created in [Vendor configuration: Step 1](#step-1-create-an-integration-system-user).
143-
11. **Refresh Token URL**. Paste the Token endpoint copied from [Vendor configuration: Step 3](#step-3-register-the-api-client).
144-
12. **Client ID**. Paste the Client ID copied from [Vendor configuration: Step 3](#step-3-register-the-api-client).
145-
13. **Client Secret**. Paste the Client Secret copied from [Vendor configuration: Step 3](#step-3-register-the-api-client).
146-
14. **Refresh Token**. Paste the generated Refresh Token copied from [Vendor configuration: Step3](#step-3-register-the-api-client).
147-
15. **REST API URL**. Take the Workday Rest API endpoint copied in [Vendor configuration: Step 3](#step-3-register-the-api-client) and modify it to match the format `https://<host>/ccx/api/privacy/v1/<tenant>/activityLogging`. Provide the modified URL here.
148-
16. **Collection Should begin** (Optional). Select the time range for how far back you want this source to start collecting data from Workday. This is set to **24 Hours ago** by default.
149-
:::note
150-
<CollBegin/>
151-
:::
152-
17. **Polling Interval** (Optional). Select how often you want the Source to collect data from Workday. This is set to 10 minutes by default.
153-
18. When you are finished configuring the Source, click **Save**.
108+
8. **Client ID**. Paste the Client ID copied from vendor configuration [Step 1](#step-1-register-the-api-client).
109+
9. **Client Secret**. Paste the Client Secret copied from [Step 1](#step-1-register-the-api-client).
110+
10. **Refresh Token URL**. Paste the Token endpoint copied from [Step 1](#step-1-register-the-api-client).
111+
11. **Refresh Token**. Paste the generated Refresh Token copied from [Step 1](#step-1-register-the-api-client).
112+
12. **SignOn Report URL**. Paste the SignOn Report URL from the vendor configuration [Step 3](#step-3-create-a-custom-sign-on-report).
113+
13. **REST API URL**. Take the Workday Rest API endpoint copied in [Step 1](#step-1-register-the-api-client) and modify it to match the format `https://<host>/ccx/api/privacy/v1/<tenant>/activityLogging`. Provide the modified URL here.
114+
14. **Collection Should begin** (Optional). Select the time range for how far back you want this source to start collecting data from Workday. This is set to **24 Hours ago** by default.
115+
:::note
116+
<CollBegin/>
117+
:::
118+
15. **Polling Interval** (Optional). Select how often you want the Source to collect data from Workday. This is set to 10 minutes by default.
119+
16. When you are finished configuring the Source, click **Save**.
154120

155121
## Metadata fields
156122

@@ -163,7 +129,7 @@ To configure a Workday Source, follow the steps below:
163129

164130
## JSON schema
165131

166-
Sources can be configured using UTF-8 encoded JSON files with the Collector Management API. See [how to use JSON to configure Sources](/docs/send-data/use-json-configure-sources) for details. 
132+
Sources can be configured using UTF-8 encoded JSON files with the Collector Management API. See [Use JSON to Configure Sources](/docs/send-data/use-json-configure-sources) for details. 
167133

168134
| Parameter | Type | Value | Required | Description |
169135
|:--|:--|:--|:--|:--|
@@ -179,13 +145,11 @@ Sources can be configured using UTF-8 encoded JSON files with the Collector Ma
179145
| description | String | No | `null` | Type a description of the source. | `"Testing source"`
180146
| category | String | No | `null` | Type a category of the source. This value is assigned to the [metadata](/docs/search/get-started-with-search/search-basics/built-in-metadata) field `_sourceCategory`. See [best practices](/docs/send-data/best-practices) for details. | `"mySource/test"`
181147
| fields | JSON Object | No | `null` | JSON map of key-value fields (metadata) to apply to the Collector or Source. Use the boolean field _siemForward to enable forwarding to SIEM.|`{"_siemForward": false, "fieldA": "valueA"}` |
182-
| signOnReportURL | String | Yes | `null` | The URL which will be used to fetch. sign-on activity logs | |
183-
| isuUsername | String | Yes | `null` | Username of the integration system user. | |
184-
| isuPassword | String | Yes | `null`| Password of the integration system user. | |
185-
| refreshTokenURL | String | Yes | `null` | The URL which will be used to fetch access token. | |
186148
| clientID | String | Yes | `null` | A client ID from the Workday API client. | |
187149
| clientSecret | String | Yes | `null` | A client secret from the Workday API client. | |
150+
| refreshTokenURL | String | Yes | `null` | The URL which will be used to fetch access token. | |
188151
| refreshToken | String | Yes | `null` | A non-expiring refresh token from the Workday API client. | |
152+
| signOnReportURL | String | Yes | `null` | The URL which will be used to fetch sign-on activity logs. | |
189153
| restApiURL | String | Yes | `null` | The URL which will be used to fetch activity logs. | |
190154
| backfillDays | Integer | No | 24 Hours ago(1) | How far back the integration should collect the data from the Workday. <br /> Options: Now(0) or 24 hours ago(1). | |
191155
| pollingIntervalMinutes | Integer | No | 10 | How frequently the integration should poll to Workday. <br /> Options: 10m, 15m, 30m, 1h, 24h. | |
@@ -213,69 +177,52 @@ If the Source is not functioning as expected, you may see an error next to the S
213177

214178
The following section details how you can resolve various errors.
215179

216-
#### Error 401 | Client Error: invalid username or password
217-
218-
To resolve this:
219-
1. Check if you have such an authentication policy enabled. If by default your users' login via SSO then you may have to exclude the ISU Security Group to allow it to use username and password by creating a separate authentication policy.
220-
1. Try changing the Session Timeout Minutes to 0 as shown in the article https://www.sora.co/help/configuring-your-workday-integration.
221-
1. Exempt user from password expiration as shown in the article https://www.sora.co/help/configuring-your-workday-integration.
222-
1. Configure the user login to skip security questions, if any.
180+
#### Error 400 | Bad Request: invalid_grant
181+
- An invalid or expired refresh token is provided.
182+
- Existing token is deleted or a new one is generated hence making the existing one invalid.
223183

224-
Below is the section for common errors for **Activity Logs**.
184+
To resolve this, generate a new refresh token and update the C2C configuration.
225185

226-
#### Error 403 | Forbidden: permission denied
227-
- Token will be generated successfully in this case but Activity Logs API will return 403 forbidden error.
228-
- This is due to `System scope` is not provided to the API client.
186+
#### Error 400 | Bad Request: invalid_request
187+
- An invalid tenant name is provided in the token URL.
229188

230-
To resolve this:
231-
1. Enable the `System scope`. Refer to the [Workday App > API Client](#step-3-register-the-api-client) section.
189+
To resolve this, provide the correct "tenant name".
232190

233191
#### Error 401 | Unauthorized: invalid_client
234192
- Invalid client id or client secret is provided.
235193
- A new client secret is generated, making the existing one invalid.
236-
- The `OAuth 2.0 Clients Enabled` checkbox under the Edit Tenant Setup - Security task is disabled.
194+
- The **OAuth 2.0 Clients Enabled** checkbox under the **Edit Tenant Setup - Security** task is disabled.
237195

238196
To resolve this:
239197
1. Provide the correct "client id" and "client secret".
240-
1. Enable the `The OAuth 2.0 Clients Enabled` checkbox. Refer to the [Workday App > OAuth 2.0 Clients Enabled](#step-4-enable-your-tenant-to-send-data) section.
241-
198+
1. Enable the **The OAuth 2.0 Clients Enabled** checkbox. Refer to the **Workday App > OAuth 2.0 Clients Enabled** section described in [Step 2](#step-2-enable-your-tenant-to-send-data).
242199

243-
#### Error 400 | Bad Request: invalid_grant
244-
- An invalid or expired refresh token is provided.
245-
- Existing token is deleted or a new one is generated hence making the existing one invalid.
246-
247-
To resolve this:
248-
1. Generate a new refresh token and update the C2C configuration.
249-
250-
#### Error 400 | Bad Request: invalid_request
251-
- An invalid tenant name is provided in the token URL.
200+
#### Error 403 | Forbidden: permission denied
201+
- Token will be generated successfully in this case but Activity Logs API will return 403 forbidden error.
202+
- This is due to `System scope` is not provided to the API client.
252203

253-
To resolve this:
254-
1. Provide the correct "tenant name".
204+
To resolve this, enable the `System scope`. Refer to the **Workday App > API Client** section described in [Step 1](#step-1-register-the-api-client).
255205

256206
#### Error 404 | Not Found: invalid_request
257207
- An invalid path parameter is provided in the token URL. For example, `/oauth/` instead of `/oauth2/`.
258208

259-
To resolve this:
260-
1. Provide the correct "token URL".
209+
To resolve this, provide the correct "token URL".
261210

262211
#### Error 404 | Not Found: invalid_request
263212
- An invalid path parameter is provided in the Activity Logs URL. For example, `/v2` instead of `/v1`.
264213

265-
To resolve this:
266-
1. Provide the correct "Activity Logs URL".
214+
To resolve this, provide the correct "Activity Logs URL".
267215

268216
#### Error | 503: Service Unavailable
269217
- An invalid tenant name is provided in the Activity Logs URL.
270218
- An invalid hostname is provided in the token or Activity Logs URL. For example, `wd5-impl-services1.workday.com` instead of `wd2-impl-services1.workday.com`.
271219

272-
To resolve this:
273-
1. Provide the correct "tenant name" and "hostname".
220+
To resolve this, provide the correct "tenant name" and "hostname".
274221

275222
#### Error | received sign-on report log time outside time filter window. create a custom sign on report as per the setup instructions
276223
- Custom sign on report is not created as per the instructions
277224

278-
To resolve this, [Create a Custom Sign on Report](#step-5-create-a-custom-sign-on-report) and configure the source accordingly.
225+
To resolve this, [create a custom sign on report](#step-3-create-a-custom-sign-on-report) and configure the source accordingly.
279226

280227
## FAQ
281228

static/files/c2c/workday/example.json

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,11 @@
55
"name": "Workday Test",
66
"description": "Testing the workday source",
77
"category": "General",
8-
"signOnReportURL": "https://wd2-impl-services1.workday.com...-_Copy",
9-
"isuUsername": "SumoLogic",
10-
"isuPassword": "**********",
11-
"refreshTokenURL": "https://wd2-impl-services1.workday.com...token",
128
"clientID": "sldfsjdflk230sdflnk2342cxcoijs0",
139
"clientSecret": "**********",
10+
"refreshTokenURL": "https://wd2-impl-services1.workday.com...token",
1411
"refreshToken": "**********",
12+
"signOnReportURL": "https://wd2-impl-services1.workday.com...-_Copy",
1513
"restApiURL": "https://wd2-impl-services1.workday.com...activityLogging",
1614
"backfillDays": 1,
1715
"pollingIntervalMinutes": 10

static/files/c2c/workday/example.tf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@ resource "sumologic_cloud_to_cloud_source" "workday_source" {
77
"name": "Workday Test",
88
"description": "Testing the workday source",
99
"category": "General",
10-
"signOnReportURL": "https://wd2-impl-services1.workday.com...-_Copy",
1110
"isuUsername": "SumoLogic",
1211
"isuPassword": "**********",
13-
"refreshTokenURL": "https://wd2-impl-services1.workday.com...token",
1412
"clientID": "sldfsjdflk230sdflnk2342cxcoijs0",
1513
"clientSecret": "**********",
14+
"refreshTokenURL": "https://wd2-impl-services1.workday.com...token",
1615
"refreshToken": "**********",
16+
"signOnReportURL": "https://wd2-impl-services1.workday.com...-_Copy",
1717
"restApiURL": "https://wd2-impl-services1.workday.com...activityLogging",
1818
"backfillDays": 1,
1919
"pollingIntervalMinutes": 10

0 commit comments

Comments
 (0)