@boxyhq/saml-jackson 1.33.1-beta.1 → 1.34.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/typings.d.ts +1 -1
- package/package.json +1 -1
- package/dist/controller/oauth/oidc-issuer.d.ts +0 -2
- package/dist/controller/oauth/oidc-issuer.js +0 -25
- package/dist/controller/oauth/oidc-issuer.js.map +0 -1
- package/dist/src/controller/admin.d.ts +0 -27
- package/dist/src/controller/admin.js +0 -60
- package/dist/src/controller/admin.js.map +0 -1
- package/dist/src/controller/analytics.d.ts +0 -16
- package/dist/src/controller/analytics.js +0 -79
- package/dist/src/controller/analytics.js.map +0 -1
- package/dist/src/controller/api.d.ts +0 -557
- package/dist/src/controller/api.js +0 -806
- package/dist/src/controller/api.js.map +0 -1
- package/dist/src/controller/connection/oidc.d.ts +0 -7
- package/dist/src/controller/connection/oidc.js +0 -181
- package/dist/src/controller/connection/oidc.js.map +0 -1
- package/dist/src/controller/connection/saml.d.ts +0 -7
- package/dist/src/controller/connection/saml.js +0 -250
- package/dist/src/controller/connection/saml.js.map +0 -1
- package/dist/src/controller/error.d.ts +0 -10
- package/dist/src/controller/error.js +0 -13
- package/dist/src/controller/error.js.map +0 -1
- package/dist/src/controller/health-check.d.ts +0 -11
- package/dist/src/controller/health-check.js +0 -51
- package/dist/src/controller/health-check.js.map +0 -1
- package/dist/src/controller/logout.d.ts +0 -18
- package/dist/src/controller/logout.js +0 -132
- package/dist/src/controller/logout.js.map +0 -1
- package/dist/src/controller/oauth/allowed.d.ts +0 -1
- package/dist/src/controller/oauth/allowed.js +0 -30
- package/dist/src/controller/oauth/allowed.js.map +0 -1
- package/dist/src/controller/oauth/code-verifier.d.ts +0 -1
- package/dist/src/controller/oauth/code-verifier.js +0 -8
- package/dist/src/controller/oauth/code-verifier.js.map +0 -1
- package/dist/src/controller/oauth/oidc-client.d.ts +0 -12
- package/dist/src/controller/oauth/oidc-client.js +0 -89
- package/dist/src/controller/oauth/oidc-client.js.map +0 -1
- package/dist/src/controller/oauth/redirect.d.ts +0 -1
- package/dist/src/controller/oauth/redirect.js +0 -13
- package/dist/src/controller/oauth/redirect.js.map +0 -1
- package/dist/src/controller/oauth.d.ts +0 -142
- package/dist/src/controller/oauth.js +0 -1112
- package/dist/src/controller/oauth.js.map +0 -1
- package/dist/src/controller/oidc-discovery.d.ts +0 -22
- package/dist/src/controller/oidc-discovery.js +0 -47
- package/dist/src/controller/oidc-discovery.js.map +0 -1
- package/dist/src/controller/setup-link.d.ts +0 -307
- package/dist/src/controller/setup-link.js +0 -462
- package/dist/src/controller/setup-link.js.map +0 -1
- package/dist/src/controller/sp-config.d.ts +0 -22
- package/dist/src/controller/sp-config.js +0 -89
- package/dist/src/controller/sp-config.js.map +0 -1
- package/dist/src/controller/sso-handler.d.ts +0 -66
- package/dist/src/controller/sso-handler.js +0 -306
- package/dist/src/controller/sso-handler.js.map +0 -1
- package/dist/src/controller/utils.d.ts +0 -84
- package/dist/src/controller/utils.js +0 -328
- package/dist/src/controller/utils.js.map +0 -1
- package/dist/src/cron/lock.d.ts +0 -18
- package/dist/src/cron/lock.js +0 -98
- package/dist/src/cron/lock.js.map +0 -1
- package/dist/src/db/db.d.ts +0 -5
- package/dist/src/db/db.js +0 -178
- package/dist/src/db/db.js.map +0 -1
- package/dist/src/db/defaultDb.d.ts +0 -2
- package/dist/src/db/defaultDb.js +0 -18
- package/dist/src/db/defaultDb.js.map +0 -1
- package/dist/src/db/dynamoDb.d.ts +0 -19
- package/dist/src/db/dynamoDb.js +0 -320
- package/dist/src/db/dynamoDb.js.map +0 -1
- package/dist/src/db/encrypter.d.ts +0 -3
- package/dist/src/db/encrypter.js +0 -22
- package/dist/src/db/encrypter.js.map +0 -1
- package/dist/src/db/mem.d.ts +0 -23
- package/dist/src/db/mem.js +0 -186
- package/dist/src/db/mem.js.map +0 -1
- package/dist/src/db/mongo.d.ts +0 -22
- package/dist/src/db/mongo.js +0 -177
- package/dist/src/db/mongo.js.map +0 -1
- package/dist/src/db/planetscale/entity/JacksonIndex.d.ts +0 -5
- package/dist/src/db/planetscale/entity/JacksonIndex.js +0 -32
- package/dist/src/db/planetscale/entity/JacksonIndex.js.map +0 -1
- package/dist/src/db/planetscale/entity/JacksonStore.d.ts +0 -9
- package/dist/src/db/planetscale/entity/JacksonStore.js +0 -63
- package/dist/src/db/planetscale/entity/JacksonStore.js.map +0 -1
- package/dist/src/db/planetscale/entity/JacksonTTL.d.ts +0 -4
- package/dist/src/db/planetscale/entity/JacksonTTL.js +0 -27
- package/dist/src/db/planetscale/entity/JacksonTTL.js.map +0 -1
- package/dist/src/db/redis.d.ts +0 -18
- package/dist/src/db/redis.js +0 -214
- package/dist/src/db/redis.js.map +0 -1
- package/dist/src/db/sql/entity/JacksonIndex.d.ts +0 -7
- package/dist/src/db/sql/entity/JacksonIndex.js +0 -39
- package/dist/src/db/sql/entity/JacksonIndex.js.map +0 -1
- package/dist/src/db/sql/entity/JacksonStore.d.ts +0 -9
- package/dist/src/db/sql/entity/JacksonStore.js +0 -61
- package/dist/src/db/sql/entity/JacksonStore.js.map +0 -1
- package/dist/src/db/sql/entity/JacksonTTL.d.ts +0 -4
- package/dist/src/db/sql/entity/JacksonTTL.js +0 -27
- package/dist/src/db/sql/entity/JacksonTTL.js.map +0 -1
- package/dist/src/db/sql/mariadb/entity/JacksonIndex.d.ts +0 -7
- package/dist/src/db/sql/mariadb/entity/JacksonIndex.js +0 -39
- package/dist/src/db/sql/mariadb/entity/JacksonIndex.js.map +0 -1
- package/dist/src/db/sql/mariadb/entity/JacksonStore.d.ts +0 -9
- package/dist/src/db/sql/mariadb/entity/JacksonStore.js +0 -63
- package/dist/src/db/sql/mariadb/entity/JacksonStore.js.map +0 -1
- package/dist/src/db/sql/mariadb/entity/JacksonTTL.d.ts +0 -4
- package/dist/src/db/sql/mariadb/entity/JacksonTTL.js +0 -27
- package/dist/src/db/sql/mariadb/entity/JacksonTTL.js.map +0 -1
- package/dist/src/db/sql/mssql/entity/JacksonIndex.d.ts +0 -7
- package/dist/src/db/sql/mssql/entity/JacksonIndex.js +0 -39
- package/dist/src/db/sql/mssql/entity/JacksonIndex.js.map +0 -1
- package/dist/src/db/sql/mssql/entity/JacksonStore.d.ts +0 -9
- package/dist/src/db/sql/mssql/entity/JacksonStore.js +0 -61
- package/dist/src/db/sql/mssql/entity/JacksonStore.js.map +0 -1
- package/dist/src/db/sql/mssql/entity/JacksonTTL.d.ts +0 -4
- package/dist/src/db/sql/mssql/entity/JacksonTTL.js +0 -27
- package/dist/src/db/sql/mssql/entity/JacksonTTL.js.map +0 -1
- package/dist/src/db/sql/mssql.d.ts +0 -1
- package/dist/src/db/sql/mssql.js +0 -44
- package/dist/src/db/sql/mssql.js.map +0 -1
- package/dist/src/db/sql/sql.d.ts +0 -32
- package/dist/src/db/sql/sql.js +0 -318
- package/dist/src/db/sql/sql.js.map +0 -1
- package/dist/src/db/sql/sqlite/entity/JacksonIndex.d.ts +0 -7
- package/dist/src/db/sql/sqlite/entity/JacksonIndex.js +0 -39
- package/dist/src/db/sql/sqlite/entity/JacksonIndex.js.map +0 -1
- package/dist/src/db/sql/sqlite/entity/JacksonStore.d.ts +0 -9
- package/dist/src/db/sql/sqlite/entity/JacksonStore.js +0 -61
- package/dist/src/db/sql/sqlite/entity/JacksonStore.js.map +0 -1
- package/dist/src/db/sql/sqlite/entity/JacksonTTL.d.ts +0 -4
- package/dist/src/db/sql/sqlite/entity/JacksonTTL.js +0 -27
- package/dist/src/db/sql/sqlite/entity/JacksonTTL.js.map +0 -1
- package/dist/src/db/store.d.ts +0 -5
- package/dist/src/db/store.js +0 -65
- package/dist/src/db/store.js.map +0 -1
- package/dist/src/db/utils.d.ts +0 -16
- package/dist/src/db/utils.js +0 -28
- package/dist/src/db/utils.js.map +0 -1
- package/dist/src/directory-sync/batch-events/queue.d.ts +0 -40
- package/dist/src/directory-sync/batch-events/queue.js +0 -225
- package/dist/src/directory-sync/batch-events/queue.js.map +0 -1
- package/dist/src/directory-sync/index.d.ts +0 -27
- package/dist/src/directory-sync/index.js +0 -97
- package/dist/src/directory-sync/index.js.map +0 -1
- package/dist/src/directory-sync/non-scim/google/api.d.ts +0 -36
- package/dist/src/directory-sync/non-scim/google/api.js +0 -143
- package/dist/src/directory-sync/non-scim/google/api.js.map +0 -1
- package/dist/src/directory-sync/non-scim/google/index.d.ts +0 -12
- package/dist/src/directory-sync/non-scim/google/index.js +0 -10
- package/dist/src/directory-sync/non-scim/google/index.js.map +0 -1
- package/dist/src/directory-sync/non-scim/google/oauth.d.ts +0 -27
- package/dist/src/directory-sync/non-scim/google/oauth.js +0 -105
- package/dist/src/directory-sync/non-scim/google/oauth.js.map +0 -1
- package/dist/src/directory-sync/non-scim/index.d.ts +0 -24
- package/dist/src/directory-sync/non-scim/index.js +0 -85
- package/dist/src/directory-sync/non-scim/index.js.map +0 -1
- package/dist/src/directory-sync/non-scim/syncGroupMembers.d.ts +0 -23
- package/dist/src/directory-sync/non-scim/syncGroupMembers.js +0 -105
- package/dist/src/directory-sync/non-scim/syncGroupMembers.js.map +0 -1
- package/dist/src/directory-sync/non-scim/syncGroups.d.ts +0 -24
- package/dist/src/directory-sync/non-scim/syncGroups.js +0 -120
- package/dist/src/directory-sync/non-scim/syncGroups.js.map +0 -1
- package/dist/src/directory-sync/non-scim/syncUsers.d.ts +0 -24
- package/dist/src/directory-sync/non-scim/syncUsers.js +0 -120
- package/dist/src/directory-sync/non-scim/syncUsers.js.map +0 -1
- package/dist/src/directory-sync/non-scim/utils.d.ts +0 -36
- package/dist/src/directory-sync/non-scim/utils.js +0 -109
- package/dist/src/directory-sync/non-scim/utils.js.map +0 -1
- package/dist/src/directory-sync/request.d.ts +0 -14
- package/dist/src/directory-sync/request.js +0 -29
- package/dist/src/directory-sync/request.js.map +0 -1
- package/dist/src/directory-sync/scim/Base.d.ts +0 -12
- package/dist/src/directory-sync/scim/Base.js +0 -23
- package/dist/src/directory-sync/scim/Base.js.map +0 -1
- package/dist/src/directory-sync/scim/DirectoryConfig.d.ts +0 -343
- package/dist/src/directory-sync/scim/DirectoryConfig.js +0 -580
- package/dist/src/directory-sync/scim/DirectoryConfig.js.map +0 -1
- package/dist/src/directory-sync/scim/DirectoryGroups.d.ts +0 -28
- package/dist/src/directory-sync/scim/DirectoryGroups.js +0 -252
- package/dist/src/directory-sync/scim/DirectoryGroups.js.map +0 -1
- package/dist/src/directory-sync/scim/DirectoryUsers.d.ts +0 -25
- package/dist/src/directory-sync/scim/DirectoryUsers.js +0 -193
- package/dist/src/directory-sync/scim/DirectoryUsers.js.map +0 -1
- package/dist/src/directory-sync/scim/Groups.d.ts +0 -166
- package/dist/src/directory-sync/scim/Groups.js +0 -348
- package/dist/src/directory-sync/scim/Groups.js.map +0 -1
- package/dist/src/directory-sync/scim/Users.d.ts +0 -99
- package/dist/src/directory-sync/scim/Users.js +0 -215
- package/dist/src/directory-sync/scim/Users.js.map +0 -1
- package/dist/src/directory-sync/scim/WebhookEventsLogger.d.ts +0 -101
- package/dist/src/directory-sync/scim/WebhookEventsLogger.js +0 -165
- package/dist/src/directory-sync/scim/WebhookEventsLogger.js.map +0 -1
- package/dist/src/directory-sync/scim/transform.d.ts +0 -6
- package/dist/src/directory-sync/scim/transform.js +0 -37
- package/dist/src/directory-sync/scim/transform.js.map +0 -1
- package/dist/src/directory-sync/scim/utils.d.ts +0 -33
- package/dist/src/directory-sync/scim/utils.js +0 -129
- package/dist/src/directory-sync/scim/utils.js.map +0 -1
- package/dist/src/directory-sync/types.d.ts +0 -195
- package/dist/src/directory-sync/types.js +0 -10
- package/dist/src/directory-sync/types.js.map +0 -1
- package/dist/src/directory-sync/utils.d.ts +0 -19
- package/dist/src/directory-sync/utils.js +0 -56
- package/dist/src/directory-sync/utils.js.map +0 -1
- package/dist/src/ee/branding/index.d.ts +0 -17
- package/dist/src/ee/branding/index.js +0 -49
- package/dist/src/ee/branding/index.js.map +0 -1
- package/dist/src/ee/common/checkLicense.d.ts +0 -3
- package/dist/src/ee/common/checkLicense.js +0 -23
- package/dist/src/ee/common/checkLicense.js.map +0 -1
- package/dist/src/ee/identity-federation/app.d.ts +0 -328
- package/dist/src/ee/identity-federation/app.js +0 -532
- package/dist/src/ee/identity-federation/app.js.map +0 -1
- package/dist/src/ee/identity-federation/idp-login.d.ts +0 -18
- package/dist/src/ee/identity-federation/idp-login.js +0 -98
- package/dist/src/ee/identity-federation/idp-login.js.map +0 -1
- package/dist/src/ee/identity-federation/index.d.ts +0 -15
- package/dist/src/ee/identity-federation/index.js +0 -43
- package/dist/src/ee/identity-federation/index.js.map +0 -1
- package/dist/src/ee/identity-federation/sso.d.ts +0 -24
- package/dist/src/ee/identity-federation/sso.js +0 -124
- package/dist/src/ee/identity-federation/sso.js.map +0 -1
- package/dist/src/ee/identity-federation/types.d.ts +0 -38
- package/dist/src/ee/identity-federation/types.js +0 -2
- package/dist/src/ee/identity-federation/types.js.map +0 -1
- package/dist/src/ee/ory/ory.d.ts +0 -18
- package/dist/src/ee/ory/ory.js +0 -195
- package/dist/src/ee/ory/ory.js.map +0 -1
- package/dist/src/ee/product/index.d.ts +0 -14
- package/dist/src/ee/product/index.js +0 -45
- package/dist/src/ee/product/index.js.map +0 -1
- package/dist/src/event/axios.d.ts +0 -2
- package/dist/src/event/axios.js +0 -27
- package/dist/src/event/axios.js.map +0 -1
- package/dist/src/event/index.d.ts +0 -11
- package/dist/src/event/index.js +0 -53
- package/dist/src/event/index.js.map +0 -1
- package/dist/src/event/types.d.ts +0 -21
- package/dist/src/event/types.js +0 -2
- package/dist/src/event/types.js.map +0 -1
- package/dist/src/event/utils.d.ts +0 -4
- package/dist/src/event/utils.js +0 -33
- package/dist/src/event/utils.js.map +0 -1
- package/dist/src/event/webhook.d.ts +0 -3
- package/dist/src/event/webhook.js +0 -34
- package/dist/src/event/webhook.js.map +0 -1
- package/dist/src/index.d.ts +0 -35
- package/dist/src/index.js +0 -161
- package/dist/src/index.js.map +0 -1
- package/dist/src/loadConnection.d.ts +0 -4
- package/dist/src/loadConnection.js +0 -38
- package/dist/src/loadConnection.js.map +0 -1
- package/dist/src/opentelemetry/metrics.d.ts +0 -14
- package/dist/src/opentelemetry/metrics.js +0 -64
- package/dist/src/opentelemetry/metrics.js.map +0 -1
- package/dist/src/saml/claims.d.ts +0 -12
- package/dist/src/saml/claims.js +0 -57
- package/dist/src/saml/claims.js.map +0 -1
- package/dist/src/saml/lib.d.ts +0 -8
- package/dist/src/saml/lib.js +0 -29
- package/dist/src/saml/lib.js.map +0 -1
- package/dist/src/saml/x509.d.ts +0 -9
- package/dist/src/saml/x509.js +0 -93
- package/dist/src/saml/x509.js.map +0 -1
- package/dist/src/sso-traces/index.d.ts +0 -114
- package/dist/src/sso-traces/index.js +0 -229
- package/dist/src/sso-traces/index.js.map +0 -1
- package/dist/src/sso-traces/types.d.ts +0 -44
- package/dist/src/sso-traces/types.js +0 -2
- package/dist/src/sso-traces/types.js.map +0 -1
- package/dist/src/typings.d.ts +0 -540
- package/dist/src/typings.js +0 -5
- package/dist/src/typings.js.map +0 -1
- package/dist/typeorm.d.ts +0 -3
- package/dist/typeorm.js +0 -58
- package/dist/typeorm.js.map +0 -1
@@ -1,101 +0,0 @@
|
|
1
|
-
import type { Directory, DatabaseStore, WebhookEventLog, DirectorySyncEvent, PaginationParams } from '../../typings';
|
2
|
-
import { Base } from './Base';
|
3
|
-
type GetAllParams = PaginationParams & {
|
4
|
-
directoryId?: string;
|
5
|
-
};
|
6
|
-
/**
|
7
|
-
* @swagger
|
8
|
-
* definitions:
|
9
|
-
* Event:
|
10
|
-
* type: object
|
11
|
-
* example:
|
12
|
-
* {
|
13
|
-
* "id": "id1",
|
14
|
-
* "webhook_endpoint": "https://example.com/webhook",
|
15
|
-
* "created_at": "2024-03-05T17:06:26.074Z",
|
16
|
-
* "status_code": 200,
|
17
|
-
* "delivered": true,
|
18
|
-
* "payload": {
|
19
|
-
* "directory_id": "58b5cd9dfaa39d47eb8f5f88631f9a629a232016",
|
20
|
-
* "event": "user.created",
|
21
|
-
* "tenant": "boxyhq",
|
22
|
-
* "product": "jackson",
|
23
|
-
* "data": {
|
24
|
-
* "id": "038e767b-9bc6-4dbd-975e-fbc38a8e7d82",
|
25
|
-
* "first_name": "Deepak",
|
26
|
-
* "last_name": "Prabhakara",
|
27
|
-
* "email": "deepak@boxyhq.com",
|
28
|
-
* "active": true,
|
29
|
-
* "raw": {
|
30
|
-
* "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
|
31
|
-
* "userName": "deepak@boxyhq.com",
|
32
|
-
* "name": {
|
33
|
-
* "givenName": "Deepak",
|
34
|
-
* "familyName": "Prabhakara"
|
35
|
-
* },
|
36
|
-
* "emails": [
|
37
|
-
* {
|
38
|
-
* "primary": true,
|
39
|
-
* "value": "deepak@boxyhq.com",
|
40
|
-
* "type": "work"
|
41
|
-
* }
|
42
|
-
* ],
|
43
|
-
* "title": "CEO",
|
44
|
-
* "displayName": "Deepak Prabhakara",
|
45
|
-
* "locale": "en-US",
|
46
|
-
* "externalId": "00u1ldzzogFkXFmvT5d7",
|
47
|
-
* "groups": [],
|
48
|
-
* "active": true,
|
49
|
-
* "id": "038e767b-9bc6-4dbd-975e-fbc38a8e7d82"
|
50
|
-
* }
|
51
|
-
* }
|
52
|
-
* }
|
53
|
-
* }
|
54
|
-
*/
|
55
|
-
export declare class WebhookEventsLogger extends Base {
|
56
|
-
constructor({ db }: {
|
57
|
-
db: DatabaseStore;
|
58
|
-
});
|
59
|
-
log(directory: Directory, event: DirectorySyncEvent | DirectorySyncEvent[], status: number): Promise<WebhookEventLog>;
|
60
|
-
get(id: string): Promise<WebhookEventLog>;
|
61
|
-
/**
|
62
|
-
* @swagger
|
63
|
-
* /api/v1/dsync/events:
|
64
|
-
* get:
|
65
|
-
* summary: Get event logs for a directory
|
66
|
-
* parameters:
|
67
|
-
* - $ref: '#/parameters/directoryId'
|
68
|
-
* - $ref: '#/parameters/tenant'
|
69
|
-
* - $ref: '#/parameters/product'
|
70
|
-
* - $ref: '#/parameters/pageOffset'
|
71
|
-
* - $ref: '#/parameters/pageLimit'
|
72
|
-
* - $ref: '#/parameters/pageToken'
|
73
|
-
* tags:
|
74
|
-
* - Directory Sync
|
75
|
-
* produces:
|
76
|
-
* - application/json
|
77
|
-
* responses:
|
78
|
-
* 200:
|
79
|
-
* description: Success
|
80
|
-
* content:
|
81
|
-
* application/json:
|
82
|
-
* schema:
|
83
|
-
* type: object
|
84
|
-
* properties:
|
85
|
-
* data:
|
86
|
-
* type: array
|
87
|
-
* items:
|
88
|
-
* $ref: '#/definitions/Event'
|
89
|
-
* pageToken:
|
90
|
-
* type: string
|
91
|
-
* description: token for pagination
|
92
|
-
*/
|
93
|
-
getAll(params?: GetAllParams): Promise<{
|
94
|
-
data: WebhookEventLog[];
|
95
|
-
pageToken: string | undefined;
|
96
|
-
}>;
|
97
|
-
delete(id: string): Promise<void>;
|
98
|
-
deleteAll(directoryId: string): Promise<void>;
|
99
|
-
private eventStore;
|
100
|
-
}
|
101
|
-
export {};
|
@@ -1,165 +0,0 @@
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
8
|
-
});
|
9
|
-
};
|
10
|
-
import { randomUUID } from 'crypto';
|
11
|
-
import { Base } from './Base';
|
12
|
-
import { webhookLogsTTL } from '../utils';
|
13
|
-
import { indexNames } from './utils';
|
14
|
-
/**
|
15
|
-
* @swagger
|
16
|
-
* definitions:
|
17
|
-
* Event:
|
18
|
-
* type: object
|
19
|
-
* example:
|
20
|
-
* {
|
21
|
-
* "id": "id1",
|
22
|
-
* "webhook_endpoint": "https://example.com/webhook",
|
23
|
-
* "created_at": "2024-03-05T17:06:26.074Z",
|
24
|
-
* "status_code": 200,
|
25
|
-
* "delivered": true,
|
26
|
-
* "payload": {
|
27
|
-
* "directory_id": "58b5cd9dfaa39d47eb8f5f88631f9a629a232016",
|
28
|
-
* "event": "user.created",
|
29
|
-
* "tenant": "boxyhq",
|
30
|
-
* "product": "jackson",
|
31
|
-
* "data": {
|
32
|
-
* "id": "038e767b-9bc6-4dbd-975e-fbc38a8e7d82",
|
33
|
-
* "first_name": "Deepak",
|
34
|
-
* "last_name": "Prabhakara",
|
35
|
-
* "email": "deepak@boxyhq.com",
|
36
|
-
* "active": true,
|
37
|
-
* "raw": {
|
38
|
-
* "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
|
39
|
-
* "userName": "deepak@boxyhq.com",
|
40
|
-
* "name": {
|
41
|
-
* "givenName": "Deepak",
|
42
|
-
* "familyName": "Prabhakara"
|
43
|
-
* },
|
44
|
-
* "emails": [
|
45
|
-
* {
|
46
|
-
* "primary": true,
|
47
|
-
* "value": "deepak@boxyhq.com",
|
48
|
-
* "type": "work"
|
49
|
-
* }
|
50
|
-
* ],
|
51
|
-
* "title": "CEO",
|
52
|
-
* "displayName": "Deepak Prabhakara",
|
53
|
-
* "locale": "en-US",
|
54
|
-
* "externalId": "00u1ldzzogFkXFmvT5d7",
|
55
|
-
* "groups": [],
|
56
|
-
* "active": true,
|
57
|
-
* "id": "038e767b-9bc6-4dbd-975e-fbc38a8e7d82"
|
58
|
-
* }
|
59
|
-
* }
|
60
|
-
* }
|
61
|
-
* }
|
62
|
-
*/
|
63
|
-
export class WebhookEventsLogger extends Base {
|
64
|
-
constructor({ db }) {
|
65
|
-
super({ db });
|
66
|
-
}
|
67
|
-
log(directory, event, status) {
|
68
|
-
return __awaiter(this, void 0, void 0, function* () {
|
69
|
-
const id = randomUUID();
|
70
|
-
const log = {
|
71
|
-
id,
|
72
|
-
payload: event,
|
73
|
-
webhook_endpoint: directory.webhook.endpoint,
|
74
|
-
created_at: new Date(),
|
75
|
-
status_code: status,
|
76
|
-
delivered: status === 200,
|
77
|
-
};
|
78
|
-
yield this.eventStore().put(id, log, {
|
79
|
-
name: indexNames.directoryId,
|
80
|
-
value: directory.id,
|
81
|
-
});
|
82
|
-
return log;
|
83
|
-
});
|
84
|
-
}
|
85
|
-
get(id) {
|
86
|
-
return __awaiter(this, void 0, void 0, function* () {
|
87
|
-
return yield this.eventStore().get(id);
|
88
|
-
});
|
89
|
-
}
|
90
|
-
/**
|
91
|
-
* @swagger
|
92
|
-
* /api/v1/dsync/events:
|
93
|
-
* get:
|
94
|
-
* summary: Get event logs for a directory
|
95
|
-
* parameters:
|
96
|
-
* - $ref: '#/parameters/directoryId'
|
97
|
-
* - $ref: '#/parameters/tenant'
|
98
|
-
* - $ref: '#/parameters/product'
|
99
|
-
* - $ref: '#/parameters/pageOffset'
|
100
|
-
* - $ref: '#/parameters/pageLimit'
|
101
|
-
* - $ref: '#/parameters/pageToken'
|
102
|
-
* tags:
|
103
|
-
* - Directory Sync
|
104
|
-
* produces:
|
105
|
-
* - application/json
|
106
|
-
* responses:
|
107
|
-
* 200:
|
108
|
-
* description: Success
|
109
|
-
* content:
|
110
|
-
* application/json:
|
111
|
-
* schema:
|
112
|
-
* type: object
|
113
|
-
* properties:
|
114
|
-
* data:
|
115
|
-
* type: array
|
116
|
-
* items:
|
117
|
-
* $ref: '#/definitions/Event'
|
118
|
-
* pageToken:
|
119
|
-
* type: string
|
120
|
-
* description: token for pagination
|
121
|
-
*/
|
122
|
-
// Get the event logs for a directory paginated
|
123
|
-
getAll() {
|
124
|
-
return __awaiter(this, arguments, void 0, function* (params = {}) {
|
125
|
-
const { pageOffset, pageLimit, pageToken, directoryId } = params;
|
126
|
-
let result;
|
127
|
-
if (directoryId) {
|
128
|
-
const index = {
|
129
|
-
name: indexNames.directoryId,
|
130
|
-
value: directoryId,
|
131
|
-
};
|
132
|
-
result = yield this.eventStore().getByIndex(index, pageOffset, pageLimit, pageToken);
|
133
|
-
}
|
134
|
-
else {
|
135
|
-
result = yield this.eventStore().getAll(pageOffset, pageLimit, pageToken);
|
136
|
-
}
|
137
|
-
return { data: result.data, pageToken: result.pageToken };
|
138
|
-
});
|
139
|
-
}
|
140
|
-
delete(id) {
|
141
|
-
return __awaiter(this, void 0, void 0, function* () {
|
142
|
-
yield this.eventStore().delete(id);
|
143
|
-
});
|
144
|
-
}
|
145
|
-
// Delete all event logs for a directory
|
146
|
-
deleteAll(directoryId) {
|
147
|
-
return __awaiter(this, void 0, void 0, function* () {
|
148
|
-
while (true) {
|
149
|
-
const { data: events } = yield this.eventStore().getByIndex({
|
150
|
-
name: indexNames.directoryId,
|
151
|
-
value: directoryId,
|
152
|
-
}, 0, this.bulkDeleteBatchSize);
|
153
|
-
if (!events || events.length === 0) {
|
154
|
-
break;
|
155
|
-
}
|
156
|
-
yield this.eventStore().deleteMany(events.map((event) => event.id));
|
157
|
-
}
|
158
|
-
});
|
159
|
-
}
|
160
|
-
// Get the store for the events
|
161
|
-
eventStore() {
|
162
|
-
return this.store('logs', webhookLogsTTL);
|
163
|
-
}
|
164
|
-
}
|
165
|
-
//# sourceMappingURL=WebhookEventsLogger.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"WebhookEventsLogger.js","sourceRoot":"","sources":["../../../../src/directory-sync/scim/WebhookEventsLogger.ts"],"names":[],"mappings":"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"}
|
@@ -1,6 +0,0 @@
|
|
1
|
-
import { Directory, DirectorySyncEvent, DirectorySyncEventType, Group, User } from '../../typings';
|
2
|
-
export declare const transformEventPayload: (event: DirectorySyncEventType, payload: {
|
3
|
-
directory: Directory;
|
4
|
-
group?: Group | null;
|
5
|
-
user?: User | null;
|
6
|
-
}) => DirectorySyncEvent;
|
@@ -1,37 +0,0 @@
|
|
1
|
-
const transformUser = (user) => {
|
2
|
-
return Object.assign(Object.assign({ id: user.id, first_name: user.first_name, last_name: user.last_name, email: user.email, active: user.active }, ('roles' in user ? { roles: user.roles } : undefined)), { raw: user.raw });
|
3
|
-
};
|
4
|
-
const transformGroup = (group) => {
|
5
|
-
return {
|
6
|
-
id: group.id,
|
7
|
-
name: group.name,
|
8
|
-
raw: group.raw,
|
9
|
-
};
|
10
|
-
};
|
11
|
-
const transformUserGroup = (user, group) => {
|
12
|
-
return Object.assign(Object.assign({}, transformUser(user)), { group: transformGroup(group) });
|
13
|
-
};
|
14
|
-
export const transformEventPayload = (event, payload) => {
|
15
|
-
const { directory, group, user } = payload;
|
16
|
-
const { tenant, product, id: directory_id } = directory;
|
17
|
-
const eventPayload = {
|
18
|
-
event,
|
19
|
-
tenant,
|
20
|
-
product,
|
21
|
-
directory_id,
|
22
|
-
};
|
23
|
-
// User events
|
24
|
-
if (['user.created', 'user.updated', 'user.deleted'].includes(event) && user) {
|
25
|
-
eventPayload['data'] = transformUser(user);
|
26
|
-
}
|
27
|
-
// Group events
|
28
|
-
if (['group.created', 'group.updated', 'group.deleted'].includes(event) && group) {
|
29
|
-
eventPayload['data'] = transformGroup(group);
|
30
|
-
}
|
31
|
-
// Group membership events
|
32
|
-
if (['group.user_added', 'group.user_removed'].includes(event) && user && group) {
|
33
|
-
eventPayload['data'] = transformUserGroup(user, group);
|
34
|
-
}
|
35
|
-
return eventPayload;
|
36
|
-
};
|
37
|
-
//# sourceMappingURL=transform.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"transform.js","sourceRoot":"","sources":["../../../../src/directory-sync/scim/transform.ts"],"names":[],"mappings":"AAEA,MAAM,aAAa,GAAG,CAAC,IAAU,EAAQ,EAAE;IACzC,qCACE,EAAE,EAAE,IAAI,CAAC,EAAE,EACX,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,MAAM,EAAE,IAAI,CAAC,MAAM,IAChB,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,KACxD,GAAG,EAAE,IAAI,CAAC,GAAG,IACb;AACJ,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,KAAY,EAAS,EAAE;IAC7C,OAAO;QACL,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,GAAG,EAAE,KAAK,CAAC,GAAG;KACf,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,IAAU,EAAE,KAAY,EAA2B,EAAE;IAC/E,uCACK,aAAa,CAAC,IAAI,CAAC,KACtB,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,IAC5B;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,KAA6B,EAC7B,OAA2E,EAC3E,EAAE;IACF,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IAC3C,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC;IAExD,MAAM,YAAY,GAAG;QACnB,KAAK;QACL,MAAM;QACN,OAAO;QACP,YAAY;KACb,CAAC;IAEF,cAAc;IACd,IAAI,CAAC,cAAc,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;QAC7E,YAAY,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAED,eAAe;IACf,IAAI,CAAC,eAAe,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,EAAE,CAAC;QACjF,YAAY,CAAC,MAAM,CAAC,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED,0BAA0B;IAC1B,IAAI,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC;QAChF,YAAY,CAAC,MAAM,CAAC,GAAG,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACzD,CAAC;IAED,OAAO,YAAkC,CAAC;AAC5C,CAAC,CAAC"}
|
@@ -1,33 +0,0 @@
|
|
1
|
-
import type { DirectoryType, User, UserPatchOperation, GroupPatchOperation } from '../../typings';
|
2
|
-
export declare const indexNames: {
|
3
|
-
directoryIdUsername: string;
|
4
|
-
directoryIdDisplayname: string;
|
5
|
-
directoryId: string;
|
6
|
-
groupId: string;
|
7
|
-
};
|
8
|
-
export declare const parseGroupOperation: (operation: GroupPatchOperation) => {
|
9
|
-
action: string;
|
10
|
-
members: {
|
11
|
-
value: string;
|
12
|
-
display?: string;
|
13
|
-
}[];
|
14
|
-
displayName?: undefined;
|
15
|
-
} | {
|
16
|
-
action: string;
|
17
|
-
displayName: unknown;
|
18
|
-
members?: undefined;
|
19
|
-
} | {
|
20
|
-
action: string;
|
21
|
-
members?: undefined;
|
22
|
-
displayName?: undefined;
|
23
|
-
};
|
24
|
-
export declare const getDirectorySyncProviders: () => {
|
25
|
-
[K: string]: string;
|
26
|
-
};
|
27
|
-
export declare const parseUserPatchRequest: (operation: UserPatchOperation) => {
|
28
|
-
attributes: Partial<User>;
|
29
|
-
rawAttributes: {};
|
30
|
-
};
|
31
|
-
export declare const extractStandardUserAttributes: (body: any) => Omit<User, "raw">;
|
32
|
-
export declare const updateRawUserAttributes: (raw: any, attributes: any) => any;
|
33
|
-
export declare const isSCIMEnabledProvider: (type: DirectoryType) => type is "azure-scim-v2" | "onelogin-scim-v2" | "okta-scim-v2" | "jumpcloud-scim-v2" | "generic-scim-v2";
|
@@ -1,129 +0,0 @@
|
|
1
|
-
import _ from 'lodash';
|
2
|
-
import { DirectorySyncProviders } from '../../typings';
|
3
|
-
export const indexNames = {
|
4
|
-
directoryIdUsername: 'directoryIdUsername',
|
5
|
-
directoryIdDisplayname: 'directoryIdDisplayname',
|
6
|
-
directoryId: 'directoryId',
|
7
|
-
groupId: 'groupId',
|
8
|
-
};
|
9
|
-
const parseUserRoles = (roles) => {
|
10
|
-
if (typeof roles === 'string') {
|
11
|
-
return roles.split(',');
|
12
|
-
}
|
13
|
-
return roles;
|
14
|
-
};
|
15
|
-
export const parseGroupOperation = (operation) => {
|
16
|
-
const { op, path, value } = operation;
|
17
|
-
if (path === 'members' && typeof value == 'object') {
|
18
|
-
if (op === 'add') {
|
19
|
-
return {
|
20
|
-
action: 'addGroupMember',
|
21
|
-
members: value,
|
22
|
-
};
|
23
|
-
}
|
24
|
-
if (op === 'remove') {
|
25
|
-
return {
|
26
|
-
action: 'removeGroupMember',
|
27
|
-
members: value,
|
28
|
-
};
|
29
|
-
}
|
30
|
-
}
|
31
|
-
if (path && path.startsWith('members[value eq')) {
|
32
|
-
if (op === 'remove') {
|
33
|
-
return {
|
34
|
-
action: 'removeGroupMember',
|
35
|
-
members: [{ value: path.split('"')[1] }],
|
36
|
-
};
|
37
|
-
}
|
38
|
-
}
|
39
|
-
// Update group name
|
40
|
-
if (op === 'replace') {
|
41
|
-
if (path == 'displayName' && typeof value == 'string') {
|
42
|
-
return {
|
43
|
-
action: 'updateGroupName',
|
44
|
-
displayName: value,
|
45
|
-
};
|
46
|
-
}
|
47
|
-
else if (typeof value == 'object' && 'displayName' in value) {
|
48
|
-
return {
|
49
|
-
action: 'updateGroupName',
|
50
|
-
displayName: value.displayName,
|
51
|
-
};
|
52
|
-
}
|
53
|
-
}
|
54
|
-
return {
|
55
|
-
action: 'unknown',
|
56
|
-
};
|
57
|
-
};
|
58
|
-
// List of directory sync providers
|
59
|
-
// TODO: Fix the return type
|
60
|
-
export const getDirectorySyncProviders = () => {
|
61
|
-
return Object.entries(DirectorySyncProviders).reduce((acc, [key, value]) => {
|
62
|
-
acc[key] = value;
|
63
|
-
return acc;
|
64
|
-
}, {});
|
65
|
-
};
|
66
|
-
// Parse the PATCH request body and return the user attributes (both standard and custom)
|
67
|
-
export const parseUserPatchRequest = (operation) => {
|
68
|
-
const { value, path } = operation;
|
69
|
-
const attributes = {};
|
70
|
-
const rawAttributes = {};
|
71
|
-
const attributesMap = {
|
72
|
-
active: 'active',
|
73
|
-
'name.givenName': 'first_name',
|
74
|
-
'name.familyName': 'last_name',
|
75
|
-
'emails[type eq "work"].value': 'email',
|
76
|
-
};
|
77
|
-
// If there is a path, then the value is the value
|
78
|
-
// For example { path: "active", value: true }
|
79
|
-
if (path) {
|
80
|
-
if (path in attributesMap) {
|
81
|
-
attributes[attributesMap[path]] = value;
|
82
|
-
}
|
83
|
-
rawAttributes[path] = value;
|
84
|
-
}
|
85
|
-
// If there is no path, then the value can be an object with multiple attributes
|
86
|
-
// For example { value: { active: true, "name.familyName": "John" } }
|
87
|
-
else if (typeof value === 'object') {
|
88
|
-
for (const attribute of Object.keys(value)) {
|
89
|
-
if (attribute in attributesMap) {
|
90
|
-
attributes[attributesMap[attribute]] = value[attribute];
|
91
|
-
}
|
92
|
-
rawAttributes[attribute] = value[attribute];
|
93
|
-
}
|
94
|
-
}
|
95
|
-
return {
|
96
|
-
attributes,
|
97
|
-
rawAttributes,
|
98
|
-
};
|
99
|
-
};
|
100
|
-
// Extract standard attributes from the user body
|
101
|
-
export const extractStandardUserAttributes = (body) => {
|
102
|
-
const { name, emails, userName, active, userId, roles } = body;
|
103
|
-
const userAttributes = {
|
104
|
-
first_name: name && 'givenName' in name ? name.givenName : '',
|
105
|
-
last_name: name && 'familyName' in name ? name.familyName : '',
|
106
|
-
email: emails && emails.length > 0 ? emails[0].value : userName,
|
107
|
-
active: 'active' in body ? active : true,
|
108
|
-
id: userId || '', // For non-SCIM providers, the id will exist in the body
|
109
|
-
};
|
110
|
-
if (roles) {
|
111
|
-
userAttributes['roles'] = parseUserRoles(roles);
|
112
|
-
}
|
113
|
-
return userAttributes;
|
114
|
-
};
|
115
|
-
// Update raw user attributes
|
116
|
-
export const updateRawUserAttributes = (raw, attributes) => {
|
117
|
-
const keys = Object.keys(attributes);
|
118
|
-
if (keys.length === 0) {
|
119
|
-
return raw;
|
120
|
-
}
|
121
|
-
for (const key of keys) {
|
122
|
-
_.set(raw, key, attributes[key]);
|
123
|
-
}
|
124
|
-
return raw;
|
125
|
-
};
|
126
|
-
export const isSCIMEnabledProvider = (type) => {
|
127
|
-
return type !== 'google';
|
128
|
-
};
|
129
|
-
//# sourceMappingURL=utils.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/directory-sync/scim/utils.ts"],"names":[],"mappings":"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"}
|