-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathactivedirectory.sgnl.yaml
416 lines (407 loc) · 15.5 KB
/
activedirectory.sgnl.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
# Active Directory Configuration YAML
displayName: "Active Directory"
icon: |
PHN2ZyB3aWR0aD0iNjQiIGhlaWdodD0iNjQiIHZpZXdCb3g9IjAgMCA2NCA2NCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3Qgd2lkdGg9IjY0IiBoZWlnaHQ9IjY0IiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBkPSJNMjguOTAzMiAxMy4zNjg4TDEwLjIwMzIgMzQuNDI4QzguODI1NiAzNS45NzkyIDkuMTY5NiAzOC4zOTUyIDEwLjkyNCAzOS41MDE2TDMwLjEwMTYgNTEuNTkxMkMzMS4xOTY4IDUyLjI4MTYgMzIuNTkwNCA1Mi4yODE2IDMzLjY4NDggNTEuNTkxMkw1Mi44NjI0IDM5LjUwMTZDNTQuNjE2OCAzOC4zOTUyIDU0Ljk2IDM1Ljk3OTIgNTMuNTgzMiAzNC40MjhMMzQuODg0OCAxMy4zNjg4QzMzLjI5MzYgMTEuNTc2OCAzMC40OTQ0IDExLjU3NjggMjguOTAyNCAxMy4zNjg4SDI4LjkwMzJaIiBmaWxsPSJ1cmwoI3BhaW50MF9saW5lYXJfMTYyNV80MCkiLz4KPHBhdGggZD0iTTQyLjYxMzYgMzUuMDRMMjcuMzI4IDQ0Ljc2NzJDMjQuODQxNiA0Ni4zNDk2IDIxLjY2NDggNDYuMzUxMiAxOS4xNzYgNDQuNzcyOEwxMC44NCAzOS40ODMyQzkuMDg4MDEgMzguMzcxMiA4Ljc1MjAxIDM1Ljk1MjggMTAuMTM2IDM0LjQwNjRMMjguOTM4NCAxMy4yOTQ0QzMwLjQ2OTYgMTEuNTgyNCAzMy4zMTEyIDExLjU4ODggMzQuODM0NCAxMy4zMDcyTDQxLjI1MzYgMjAuNTZDNDEuMjUzNiAyMC41NiAzNi4xMzM2IDE3LjkyIDMxLjg5MzYgMjIuNzJMNDIuNjEzNiAzNS4wNFoiIGZpbGw9InVybCgjcGFpbnQxX2xpbmVhcl8xNjI1XzQwKSIvPgo8cGF0aCBkPSJNMzEuODkzNiAyMi43MkwyMS4xNzM2IDM1LjA0TDMxLjg5MzYgNDEuNzZMNDIuNjEzNiAzNS4wNEwzMS44OTM2IDIyLjcyWiIgZmlsbD0idXJsKCNwYWludDJfbGluZWFyXzE2MjVfNDApIi8+CjxtYXNrIGlkPSJtYXNrMF8xNjI1XzQwIiBzdHlsZT0ibWFzay10eXBlOmx1bWluYW5jZSIgbWFza1VuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeD0iOSIgeT0iMTIiIHdpZHRoPSI0NiIgaGVpZ2h0PSI0MSI+CjxwYXRoIGQ9Ik0yOC45MDMyIDEzLjM2ODhMMTAuMjAzMiAzNC40MjhDOC44MjU2IDM1Ljk3OTIgOS4xNjk2IDM4LjM5NTIgMTAuOTI0IDM5LjUwMTZMMzAuMTAxNiA1MS41OTEyQzMxLjE5NjggNTIuMjgxNiAzMi41OTA0IDUyLjI4MTYgMzMuNjg0OCA1MS41OTEyTDUyLjg2MjQgMzkuNTAxNkM1NC42MTY4IDM4LjM5NTIgNTQuOTYgMzUuOTc5MiA1My41ODMyIDM0LjQyOEwzNC44ODQ4IDEzLjM2ODhDMzMuMjkzNiAxMS41NzY4IDMwLjQ5NDQgMTEuNTc2OCAyOC45MDI0IDEzLjM2ODhIMjguOTAzMloiIGZpbGw9IndoaXRlIi8+CjwvbWFzaz4KPGcgbWFzaz0idXJsKCNtYXNrMF8xNjI1XzQwKSI+CjxwYXRoIHN0eWxlPSJtaXgtYmxlbmQtbW9kZTptdWx0aXBseSIgZD0iTTMxLjg5MzYgNTIuNzJWOS45Mkw1Ni4yMTM2IDM3LjQ0TDMxLjg5MzYgNTIuNzJaIiBmaWxsPSJ1cmwoI3BhaW50M19saW5lYXJfMTYyNV80MCkiLz4KPC9nPgo8ZGVmcz4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDBfbGluZWFyXzE2MjVfNDAiIHgxPSI5LjM1NTIiIHkxPSIzMi4wNjY0IiB4Mj0iNTQuNDMyIiB5Mj0iMzIuMDY2NCIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgo8c3RvcCBzdG9wLWNvbG9yPSIjMjI1MDg3Ii8+CjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzAzNEVBRiIvPgo8L2xpbmVhckdyYWRpZW50Pgo8bGluZWFyR3JhZGllbnQgaWQ9InBhaW50MV9saW5lYXJfMTYyNV80MCIgeDE9IjkuMjgwMDEiIHkxPSIyOC45ODQ4IiB4Mj0iNDIuNjEzNiIgeTI9IjI4Ljk4NDgiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iIzY5REVGRiIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMxREE2RTgiLz4KPC9saW5lYXJHcmFkaWVudD4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDJfbGluZWFyXzE2MjVfNDAiIHgxPSIzMS44OTM2IiB5MT0iMjIuNzIiIHgyPSIzMS44OTM2IiB5Mj0iNDEuNzYiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iIzhDRUFGRiIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM1RERGRkEiLz4KPC9saW5lYXJHcmFkaWVudD4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDNfbGluZWFyXzE2MjVfNDAiIHgxPSIyNS43ODg4IiB5MT0iMTMuNDQ0OCIgeDI9IjQ0LjMyMjQiIHkyPSI0NS41NDQ4IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CjxzdG9wIHN0b3Atb3BhY2l0eT0iMC4xIi8+CjxzdG9wIG9mZnNldD0iMSIgc3RvcC1vcGFjaXR5PSIwLjIiLz4KPC9saW5lYXJHcmFkaWVudD4KPC9kZWZzPgo8L3N2Zz4=
description: "Active Directory as a System of Record"
hostname: "{{Input Required: test.data.com}}"
defaultSyncFrequency: HOURLY
defaultSyncMinInterval: 1
defaultApiCallFrequency: SECONDLY
defaultApiCallMinInterval: 1
type: "LDAP-1.0.0"
# Example Config:
# {
# "baseDN":"dc=org,dc=example,dc=io",
# "certificateChain": ". . . base64 encoded certificate chain here . . "
# "entityConfig": {
# "User": {
# "query": "(&(objectCategory=user)(objectClass=user)(distinguishedName=*))"
# },
# "Computer": {
# "query": "(&(objectCategory=computer)(name=*))"
# },
# "Group": {
# "query": "(&(objectCategory=group)(objectClass=group)(distinguishedName=*))"
# },
# "GroupMember": {
# "memberOf": "Group",
# "collectionAttribute": "distinguishedName",
# "query": "(&(memberOf={{CollectionId}})(objectCategory=user)(objectClass=user))",
# "memberUniqueIdAttribute": "objectGUID",
# "memberOfUniqueIdAttribute": "objectGUID"
# }
# },
# }
# Adapter Config Field Info:
# [Required] baseDN (String): Specifies the Base Distinguished Name (DN) for the LDAP directory.
# [Optional/Required] certificateChain (String): Contains the Base64 encoded certificate chain for secure communication with the LDAP server. (if LDAPS)
# [Optional/Required] entityConfig (Object): Configurations for different types of entities within the LDAP directory.
# For more information on LDAP queries: https://ldap.com/ldap-filters/
# [Optional] entityConfig.User (Object): Configuration for user entities.
# [Required] entityConfig.User.query (String): Specifies the LDAP query for retrieving user entities.
# [Optional] entityConfig.Computer (Object): Configuration for computer entities.
# [Required] entityConfig.Computer.query (String): Specifies the LDAP query for retrieving computer entities.
# [Optional] entityConfig.Group (Object): Configuration for group entities.
# [Required] entityConfig.Group.query (String): Specifies the LDAP query for retrieving group entities.
# [Optional] entityConfig.GroupMember (Object): Configuration for group membership entities.
# [Required] entityConfig.GroupMember.memberOf (String): Specifies the group to which the members belong.
# [Required] entityConfig.GroupMember.query (String): Specifies the LDAP query for retrieving group members with {{CollectionID}}.
# [Required] entityConfig.GroupMember.collectionAttribute (String): Specifies attribute name to replate {{CollectionID}}.
# [Required] entityConfig.GroupMember.memberUniqueIdAttribute (String): Specifies the attribute used as a unique identifier for members.
# [Required] entityConfig.GroupMember.memberOfUniqueIdAttribute (String): Specifies the attribute used as a unique identifier for the group.
adapterConfig: "ewogICAgImJhc2VETiI6ICJ7e0lucHV0IFJlcXVpcmVkOiBCYXNlRE59fSIsCiAgICAiY2VydGlmaWNhdGVDaGFpbiI6ICJ7e0lucHV0IFJlcXVpcmVkOiBJZiBMREFQUyBpcyBlbmFibGVkOiBiYXNlNjQgZW5jb2RlZCBjZXJ0aWZpY2F0ZUNoYWlufX0iCn0="
# All auth mechanisms specified below must be supported by the specified Adapter.
auth:
- basic:
username: "{{Input Required: Username}}"
password: "{{Input Required: Password}}"
entities:
# Reference for Active Directory Schema
# See: https://learn.microsoft.com/en-us/windows/win32/adschema/active-directory-schema
User:
displayName: User
externalId: User
description: An entity representing a User in an Active Directory
pageSize: 100
pagesOrderedById: false
attributes:
- name: objectGUID
externalId: objectGUID
description: The objectGUID of the User
type: String
indexed: true
uniqueId: true
attributeAlias: userGUID
- name: dn
externalId: dn
description: The Distinguished Name (DN) of the user
type: String
- name: objectClass
externalId: objectClass
type: String
list: true
- name: sn
externalId: sn
type: String
- name: givenName
externalId: givenName
type: String
- name: distinguishedName
externalId: distinguishedName
type: String
- name: instanceType
externalId: instanceType
type: Int64
- name: whenCreated
externalId: whenCreated
type: DateTime
- name: whenChanged
externalId: whenChanged
type: DateTime
- name: uSNCreated
externalId: uSNCreated
type: Int64
- name: uSNChanged
externalId: uSNChanged
type: Int64
- name: department
externalId: department
type: String
- name: name
externalId: name
type: String
- name: userAccountControl
externalId: userAccountControl
type: Int64
- name: badPwdCount
externalId: badPwdCount
type: Int64
- name: codePage
externalId: codePage
type: Int64
- name: countryCode
externalId: countryCode
type: Int64
- name: badPasswordTime
externalId: badPasswordTime
type: Int64
- name: lastLogoff
externalId: lastLogoff
type: Int64
- name: lastLogon
externalId: lastLogon
type: Int64
- name: pwdLastSet
externalId: pwdLastSet
type: Int64
- name: primaryGroupID
externalId: primaryGroupID
type: Int64
- name: accountExpires
externalId: accountExpires
type: Int64
- name: logonCount
externalId: logonCount
type: Int64
- name: sAMAccountName
externalId: sAMAccountName
type: String
- name: sAMAccountType
externalId: sAMAccountType
type: Int64
- name: userPrincipalName
externalId: userPrincipalName
type: String
- name: objectCategory
externalId: objectCategory
type: String
- name: dSCorePropagationData
externalId: dSCorePropagationData
type: DateTime
- name: objectSid
externalId: objectSid
type: String
Computer:
displayName: Computer
externalId: Computer
description: An entity representing a Computer in an Active Directory
pageSize: 100
pagesOrderedById: false
attributes:
- name: objectGUID
externalId: objectGUID
description: The objectGUID of the Computer
type: String
indexed: true
uniqueId: true
- name: dn
externalId: dn
description: The Distinguished Name (DN) of the Computer
type: String
- name: objectClass
externalId: objectClass
type: String
list: true
- name: cn
externalId: cn
type: String
- name: givenName
externalId: givenName
type: String
- name: distinguishedName
externalId: distinguishedName
type: String
- name: instanceType
externalId: instanceType
type: Int64
- name: whenCreated
externalId: whenCreated
type: DateTime
- name: whenChanged
externalId: whenChanged
type: DateTime
- name: uSNCreated
externalId: uSNCreated
type: Int64
- name: uSNChanged
externalId: uSNChanged
type: Int64
- name: department
externalId: department
type: String
- name: name
externalId: name
type: String
- name: userAccountControl
externalId: userAccountControl
type: Int64
- name: badPwdCount
externalId: badPwdCount
type: Int64
- name: codePage
externalId: codePage
type: Int64
- name: countryCode
externalId: countryCode
type: Int64
- name: badPasswordTime
externalId: badPasswordTime
type: Int64
- name: lastLogoff
externalId: lastLogoff
type: Int64
- name: lastLogon
externalId: lastLogon
type: Int64
- name: localPolicyFlags
externalId: localPolicyFlags
type: Int64
- name: pwdLastSet
externalId: pwdLastSet
type: Int64
- name: primaryGroupID
externalId: primaryGroupID
type: Int64
- name: accountExpires
externalId: accountExpires
type: Int64
- name: logonCount
externalId: logonCount
type: Int64
- name: sAMAccountName
externalId: sAMAccountName
type: String
- name: sAMAccountType
externalId: sAMAccountType
type: Int64
- name: operatingSystem
externalId: operatingSystem
type: String
- name: operatingSystemVersion
externalId: operatingSystemVersion
type: String
- name: dNSHostName
externalId: dNSHostName
type: String
- name: servicePrincipalName
externalId: servicePrincipalName
type: String
list: true
- name: objectCategory
externalId: objectCategory
type: String
- name: isCriticalSystemObject
externalId: isCriticalSystemObject
type: Bool
- name: dSCorePropagationData
externalId: dSCorePropagationData
type: DateTime
list: true
- name: objectSid
externalId: objectSid
type: String
- name: msDSSupportedEncryptionTypes
externalId: msDS-SupportedEncryptionTypes
type: Int64
- name: lastLogonTimestamp
externalId: lastLogonTimestamp
type: Int64
Group:
description: "An entity representing a Group in an Active Directory"
displayName: Group
externalId: Group
pageSize: 100
pagesOrderedById: false
attributes:
- name: objectGUID
externalId: objectGUID
description: The objectGUID of the Group
type: String
indexed: true
uniqueId: true
attributeAlias: groupGUID
- name: dn
externalId: dn
description: The Distinguished Name (DN) of the group
type: String
- name: objectClass
externalId: objectClass
type: String
list: true
- name: cn
externalId: cn
type: String
- name: description
externalId: description
type: String
- name: distinguishedName
externalId: distinguishedName
type: String
- name: instanceType
externalId: instanceType
type: Int64
- name: whenCreated
externalId: whenCreated
type: DateTime
- name: whenChanged
externalId: whenChanged
type: DateTime
- name: uSNCreated
externalId: uSNCreated
type: Int64
- name: uSNChanged
externalId: uSNChanged
type: Int64
- name: name
externalId: name
type: String
- name: sAMAccountName
externalId: sAMAccountName
type: String
- name: sAMAccountType
externalId: sAMAccountType
type: Int64
- name: groupType
externalId: groupType
type: Int64
- name: objectCategory
externalId: objectCategory
type: String
- name: dSCorePropagationData
externalId: dSCorePropagationData
type: DateTime
- name: objectSid
externalId: objectSid
type: String
GroupMember:
description: "Group Member Entity in Active Directory"
displayName: GroupMember
externalId: GroupMember
pageSize: 100
pagesOrderedById: false
attributes:
- name: id
externalId: id
type: String
indexed: true
uniqueId: true
- name: group_objectGUID
externalId: group_objectGUID
type: String
indexed: true
- name: member_objectGUID
externalId: member_objectGUID
type: String
indexed: true
relationships:
UserMember:
name: Member
displayName: User Member
fromAttribute: GroupMember.member_objectGUID
toAttribute: userGUID
GroupMember:
name: Member
displayName: Group Member
fromAttribute: GroupMember.member_objectGUID
toAttribute: groupGUID
MemberOf:
name: MemberOf
displayName: Member Of
fromAttribute: GroupMember.group_objectGUID
toAttribute: groupGUID
UserMemberGroup:
name: Group
displayName: User Member Group
path:
- relationship: UserMember
direction: Backward
- relationship: MemberOf
direction: Forward
GroupMemberGroup:
name: Group
displayName: Group Member Group
path:
- relationship: GroupMember
direction: Backward
- relationship: MemberOf
direction: Forward