From 86189852ebd83696833ab000d69a091b3a60b6a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20H=C3=A9brard?= Date: Wed, 29 Oct 2025 17:13:26 +0100 Subject: [PATCH] BigID DSPM Asset expanding and mapping --- .../BigIDDSPMCatalog_Table.json | 267 +++++++++++++++- .../BigIDDSPMLogs_ccp/BigIDDSPMLogs_DCR.json | 16 +- .../BigIDDSPMLogs_PollerConfig.json | 7 +- Solutions/BigID/Package/3.0.0.zip | Bin 6403 -> 8583 bytes Solutions/BigID/Package/mainTemplate.json | 292 +++++++++++++++++- Solutions/BigID/ReleaseNotes.md | 2 +- 6 files changed, 569 insertions(+), 15 deletions(-) diff --git a/Solutions/BigID/Data Connectors/BigIDDSPMLogs_ccp/BigIDDSPMCatalog_Table.json b/Solutions/BigID/Data Connectors/BigIDDSPMLogs_ccp/BigIDDSPMCatalog_Table.json index 1911333a5d1..b1496a16105 100644 --- a/Solutions/BigID/Data Connectors/BigIDDSPMLogs_ccp/BigIDDSPMCatalog_Table.json +++ b/Solutions/BigID/Data Connectors/BigIDDSPMLogs_ccp/BigIDDSPMCatalog_Table.json @@ -14,11 +14,11 @@ "description": "The timestamp (UTC) reflecting the time in which the event was generated." }, { - "name": "case", + "name": "dspmCase", "type": "dynamic" }, { - "name": "affectedObjects", + "name": "expand", "type": "dynamic" }, { @@ -28,5 +28,268 @@ ] } } + }, + { + "name": "BigIDDSPMAssetStore_CL", + "type": "Microsoft.OperationalInsights/workspaces/tables", + "apiVersion": "2021-03-01-privatepreview", + "properties": { + "schema": { + "name": "BigIDDSPMAssetStore_CL", + "columns": [ + { + "name": "IngestionTime", + "type": "datetime", + "description": "The date and time that the line was written to the store. This is used when there are multiple lines for each file, such as when a change is detected, or if 24 hours have passed since the last store line was added." + }, + { + "name": "TimeGenerated", + "type": "datetime", + "isDefaultDisplay": true, + "description": "Time the asset information was collected (snapshot or the changefeed of that asset was taken)" + }, + { + "name": "AssetID", + "type": "string", + "description": "Unique identifier of the Asset. E.g. device ID, Document ID etc." + }, + { + "name": "CreatedDateTime", + "type": "datetime", + "description": "Date and time the Asset was created." + }, + { + "name": "AssetOwner", + "type": "dynamic", + "description": "Owner of the asset: e.g. File owner (from filesystem metadata). AccountUpn" + }, + { + "name": "AssetName", + "type": "string", + "description": "Name of the Asset" + }, + { + "name": "AssetType", + "type": "string", + "description": "Type of the asset: File, Site, Mailbox etc." + }, + { + "name": "AssetPermissions", + "type": "dynamic", + "description": "Permission strings on the assets" + }, + { + "name": "AdditionalFields", + "type": "dynamic", + "description": "Additional unmapped information about the event in JSON array format" + }, + { + "name": "Provider", + "type": "string", + "description": "The vendor who is providing this information: Microsoft/3P Providers etc." + }, + { + "name": "AssetSource", + "type": "string", + "description": "The source which generates the information: Microsoft, Snowflake, Salesforce etc." + }, + { + "name": "AADTenantID", + "type": "string", + "description": "Customer AAD Tenant ID" + }, + { + "name": "Workload", + "type": "string", + "description": "The workload within the source which is generating this information: Azure, M365 etc." + }, + { + "name": "SubWorkload", + "type": "string", + "description": "Sub workload within the Workload which is generating this information: Exchange, SharePoint, Teams in M365" + }, + { + "name": "Location", + "type": "string", + "description": "Location of the resolved IP (city/region/country), source from which it came from." + }, + { + "name": "Region", + "type": "string", + "description": "Geographical information" + }, + { + "name": "Classification", + "type": "string", + "description": "Sensitive Data classification: PII, HIPAA, Financial Data, etc. MIP classification and confidence level" + }, + { + "name": "ClassificationLastScanDateTime", + "type": "datetime", + "description": "Last time an asset was scanned to derive the classification. This is necessary to understand the darkdata on the Purview side." + }, + { + "name": "IsProtectedByDlp", + "type": "bool", + "description": "Whether the asset is protected by any DLP policy" + }, + { + "name": "Risks", + "type": "string", + "description": "All the documented issues or risks attached to the asset." + }, + { + "name": "IdentityDirectorySource", + "type": "string", + "description": "e.g Azure Active Directory, Okta etc." + }, + { + "name": "LastAccessDateTime", + "type": "datetime", + "description": "Last date and time the asset was accessed." + }, + { + "name": "LastModifiedDateTime", + "type": "datetime", + "description": "Last date and time the asset was modified." + }, + { + "name": "IsAssetRemoved", + "type": "bool", + "description": "Signifies if the asset is deleted or not?" + }, + { + "name": "FeedType", + "type": "string", + "description": "Signifies \"Changefeed\" or \"Snapshot\"" + }, + { + "name": "SensitivityLabel", + "type": "string", + "description": "Whether the file is digitally signed, and if so, whether the signature is valid." + }, + { + "name": "ThreatDetected", + "type": "bool", + "description": "True/False if flagged as malicious." + }, + { + "name": "ThreatCategory", + "type": "string", + "description": "Type of threat: phishing, malware hosting, etc)." + }, + { + "name": "ThreatName", + "type": "string", + "description": "Name of detected threat family (e.g. malware name)." + }, + { + "name": "RelatedIndicators", + "type": "string", + "description": "Related IOCs (file hashes, IPs, domains)." + }, + { + "name": "RequestSourceIP", + "type": "string", + "description": "(If network-delivered) Source IP associated with the file event." + }, + { + "name": "RequestDestinationIP", + "type": "string", + "description": "(If network-related) Destination IP." + }, + { + "name": "AssetPath", + "type": "string", + "description": "Fully qualified path of the asset: Filepath or site path." + }, + { + "name": "InternalUserWithPermissionCount", + "type": "int", + "description": "Total number of permissions assigned to internal users within an organization. De-duped count of users (preferred)" + }, + { + "name": "ExternalUserWithPermissionCount", + "type": "int", + "description": "Total number of permissions assigned to external users outside an organization. De-duped count of users (preferred)" + }, + { + "name": "DeviceName", + "type": "string", + "description": "Fully qualified domain name (FQDN) of the device or the host name of the file." + }, + { + "name": "UserName", + "type": "string", + "description": "Account associated with the file action." + }, + { + "name": "AssetSize", + "type": "string", + "description": "Size of the file in bytes." + }, + { + "name": "MD5", + "type": "string", + "description": "MD5 hash of the file." + }, + { + "name": "SHA1", + "type": "string", + "description": "SHA1 hash of the file." + }, + { + "name": "SHA256", + "type": "string", + "description": "SHA-256 of the file, if this field is usually not populated — use the SHA1 column when available." + }, + { + "name": "Extension", + "type": "string", + "description": "File extension (e.g., .exe, .docx)" + }, + { + "name": "SignatureStatus", + "type": "string", + "description": "The \"signature status\" of a file indicates whether its digital signature is valid, invalid, or has a recoverable error, confirming the file's integrity and the sender's identity after being signed with a digital certificate" + }, + { + "name": "DomainName", + "type": "string", + "description": "Fully qualified domain (e.g., malicious-site.com)" + }, + { + "name": "Subdomain", + "type": "string", + "description": "Subdomain accessed (e.g., login.malicious-site.com)" + }, + { + "name": "TopLevelDomain", + "type": "string", + "description": "Extracted TLD (e.g., .com, .org)" + }, + { + "name": "IPAddress", + "type": "string", + "description": "IP address resolved for the domain (IPv4/IPv6)." + }, + { + "name": "URL", + "type": "string", + "description": "Full URL requested (path, query string included)." + }, + { + "name": "ISP", + "type": "string", + "description": "Internet Service Provider hosting the site." + }, + { + "name": "ASN", + "type": "string", + "description": "Autonomous System Number of the hosting provider." + } + ] + } + } } ] diff --git a/Solutions/BigID/Data Connectors/BigIDDSPMLogs_ccp/BigIDDSPMLogs_DCR.json b/Solutions/BigID/Data Connectors/BigIDDSPMLogs_ccp/BigIDDSPMLogs_DCR.json index 70dcdda38d1..b723dfedd52 100644 --- a/Solutions/BigID/Data Connectors/BigIDDSPMLogs_ccp/BigIDDSPMLogs_DCR.json +++ b/Solutions/BigID/Data Connectors/BigIDDSPMLogs_ccp/BigIDDSPMLogs_DCR.json @@ -10,11 +10,11 @@ "Custom-BigIDDSPMCatalog_CL": { "columns": [ { - "name": "case", + "name": "dspmCase", "type": "dynamic" }, { - "name": "affectedObjects", + "name": "expand", "type": "dynamic" }, { @@ -40,8 +40,18 @@ "destinations": [ "clv2ws1" ], - "transformKql": "source | extend TimeGenerated = now(), EventType = 'catalog', EventVendor = 'BigID', EventProduct = 'DSPM'", + "transformKql": "source | extend TimeGenerated = now()", "outputStream": "Custom-BigIDDSPMCatalog_CL" + }, + { + "streams": [ + "Custom-BigIDDSPMCatalog_CL" + ], + "destinations": [ + "clv2ws1" + ], + "transformKql": "source | project IngestionTime=now(), TimeGenerated=todatetime(expand.created_date), AssetID=tostring(expand.fullyQualifiedName), Provider='BigID', FeedType='Snapshot', CreatedDateTime=todatetime(expand.created_date), AssetOwner=expand.owner, AssetName=tostring(expand.objectName), AssetPath=tostring(expand.fullObjectName), AssetSize=tostring(expand.sizeInBytes), AssetSource=tostring(expand.type), AssetType=tostring(expand.objectType), Workload=tostring(expand.source), Location=tostring(datasource.location), Classification=tostring(expand.attribute), ClassificationLastScanDateTime=todatetime(expand.last_scanned), LastModifiedDateTime=todatetime(expand.updated_at), Risks=tostring(dspmCase.caseLabel)", + "outputStream": "Custom-BigIDDSPMAssetStore_CL" } ] } diff --git a/Solutions/BigID/Data Connectors/BigIDDSPMLogs_ccp/BigIDDSPMLogs_PollerConfig.json b/Solutions/BigID/Data Connectors/BigIDDSPMLogs_ccp/BigIDDSPMLogs_PollerConfig.json index a2922aebce2..b348846253d 100644 --- a/Solutions/BigID/Data Connectors/BigIDDSPMLogs_ccp/BigIDDSPMLogs_PollerConfig.json +++ b/Solutions/BigID/Data Connectors/BigIDDSPMLogs_ccp/BigIDDSPMLogs_PollerConfig.json @@ -47,7 +47,7 @@ "OffsetParaName": "offset" }, "shouldJoinNestedData": true, - "joinedDataStepName": "case", + "joinedDataStepName": "dspmCase", "stepInfo": { "stepType": "Nested", "nextSteps": [ @@ -88,7 +88,7 @@ }, "fetchObjectsDetails": { "shouldJoinNestedData": true, - "joinedDataStepName": "affectedObjects", + "joinedDataStepName": "expand", "request": { "httpMethod": "GET", "apiEndpoint": "https://{{bigidFqdn}}/api/v1/data-catalog/", @@ -107,6 +107,9 @@ "format": "json" } } + }, + "extra": { + "nestedTransformName": "/ASI/Microsoft/MvExpandTransformer" } } } diff --git a/Solutions/BigID/Package/3.0.0.zip b/Solutions/BigID/Package/3.0.0.zip index 69d7c2c38b030ebe7fc6b128bda1c34f600d12d1..cbd79237255e77d4bde04ef322a3a7e76266be9b 100644 GIT binary patch delta 7093 zcmV;m8%pGZGKWJBP)h>@6aWAK2mpPREnKkY5VRU6KYIARH?LF<1+cuK_{S;j~S7}tG50Aah)=t^Jn~dy4*_p928gJ^# zlX5U5Bw>dH7yuku-lS?D;-26hZJ*?-0gxgklA<(J?Ayd!m9<5DbT=B^jqXO{ACCZ9 zkClHnry*&bKx?jbq)r9{`%6D0oXluQx$cusv7~)ZgzlRfJbiNfm)?^<^`0CLd>RE} ziS4dw7zISr{@<10|IzB=_@3aJa{V_d6%!n%IqpBf|JlzW)x;+n=l{ne0Du;W^;}47 z_%)l2hR}m>PH!cV{(s%F8S@bg)7K0h;=F$fTTes~YbH2o2L()p1T#kK5x}ozx`;>; zQca~=O&AD|V8`?qfRCtbbh@+!UKbhjk%t-5qyOES9S>(WJT?!4cqJ9@{V-1{ApZcH$L_{edGVE!62bzB> z4L_Z`DSDH+hy%ZODRl2^+WVGB-xEIdf9eDLK!I_kDe-Ys&~pkuErh&N5%Fj*0rDqU z%$YX_rog9?-BTZ?QiP`Y`6;9wkgE9SSM&ddz5uPw@#@fZoq{{k>AfeoNAywqip~rR z2(VlUD&dM`Nfh*YpeQl|vIruU01AJK2Gqm9wYw`uIcg{0+nvsjTaeD;T8>jGch$l5 zhh#3`B(zL^E@p7bNwCz+Q?Qs*N#TNdQYbOiFri#CP6J#}MRgn%&!8!G`kY{J(b-kA2k#A^~;K)yZ8PX}^3_&?gsXLsE zFV4kG6*MZGK2f*0L}ddflCcD_ZoB7uy>>U|?B|%;-Efql`3`8bI~g)n_hW*qT4-n5 z*QG!@_CYZ>v*a+g%>$=EUUNSZ3_IjtX%DiSUk&nlCi@Km9OQ)Qdh34;d2PBxQrt72 zN;OCYN4rlm{rSM}a@FU6|~J?z%J6nE|MFgw7cn=Sc7(e%C=DS)$MCsVypD6$W5(?)(N~f z2ydvAi%Mye5?5uG%8`F6;pT+b(HM?cM#4OO^7NTCx_gnN_lz!9Em2F>V*3nZOsE%2 zrk5#nd1CA&Y}%djzAHJISC<(JvGu+X;M9m*ahOr45#_#m%hOdbKfk9RHRU+XN*Nqw z6+zvlsZa!6XjjlL;d$cSk(n8%jPq8O+ofkJR1kaUvuAb zc31w>rhG{LWNFdlhTU6P=MgTJHcxv`{!%1u(jE^GdO2WMpsCGC_7oFo|2xOFXR*>E zWS@{+o2^QAUzUHbEUfR?nc!14D{KbPV*U;m-8wy)4(ja4EZp&Jz|@?sTqecsGN+IW zBJX^$Fa*7xQ+U6c?Z=~JbEXFevr;|fSg#ierO}XI?b<;Hu*nKgaI370&%h%Qxn%*< zOFWk|K0|*+7C)k>f(6raAk!)JH1$E;{+)VS0pY$G+Z}%h8J`Ln+QT~IS`?g``o-AK zB#GwV$5b+^u8{$9q7UIXBbo$a_TlV&`v@DmJNZ+@5T9x=#fHQ-*q#i{l zOW~}hZ$M|%a&U%f4&3ryw?t6{cUgvIVMlw$%>PL>RBn7l!YH776J+gB{0-GWz>W!G zn&pqz_mqEY2*hktG^C^bT!H8f{{_(CgySa<#Ti-gdKvA5FW-^hOegd{pt8MkJW{ou zH~beBhar*d6NPIQQg{g=`3P`?|M-S-l*`ob-0)wl$AKv>&{wLLrbXwW#Btl7-7~#B zlT1^|$nJDXG|IO`<;;wV#lLsn8XgD1192etgav<2T9wFml<;co6yga?NuX#!vz%R! z_Kc_unL-U)tYvaW#MtS|QX-a<(dx6LcWw1tO5;4}Lu)-=(~lZQze0yHO6nhQ)gjXm zh@>Ft&oPtKFP6+}(7K@$L76&ds`@HVMD<%I;EZc5h3m3FyjmxqWlYOQHe(aNPCK6l zG#!7jv|$n3mj7PJ(6}v))uZ-fqMX#S;`nqt0^)g8RdUOkct15AQ2(Pvur`{WOA*iJ zK-`CGaYs3NKUbWy8zpLQM~sHZ*my%Gnnn*-V{XgBQp7Iy1irvik@aE+?2ba)t_YQV zXJQ2+_SzDQgBP#WE+_UfAh1?w{^HD0rQQV-i~!frfribRZ^w;TjBosf|h^U z$c(+#x>nBw4Gg?4g!Fe>@LDtc+pPFri>SqHR&XdUp{i?Lg;ph>C9An|=3ko;zmByQ zynNg;VwI@g?0Mczg&J^O`w38*NDZFz%=6ji=@`XydN_XT4#$iaoPT$);va2mmH+n| zO%LVJNwn!%zh78ti>vGSP_BQjG%UQc(W?(H&{-9r{H_B#11Id62)Vo)=<}<$)b%zzyQ-&GzUnZ-=?X`@*j$MtsqaLOoD1jNjRilfEjxg=CKR!^oks;rLHzl z1aZh8=p6A?6rwM`${&)fw!eSmBxGKxL!-Mt81!RAxc`}fSOsgE0HnTqr>1aKn(=Bb z3dAf;rQBV>mZhU*Hb6m>N_m)2)(h^RF4XaZ1Yi+Oh$e3Wu_!~fWaHRvS+#Mh_Tx?t z%(Yc3ov)HWWrJ%;xWb^~Uw^h{fekeN0>;?(As0J=m%zp1s8h07EfIg~DAp50npMEL zE(Hp=-S3tBkra5yg^>vt;|ZOG^rfMGH@_$^weX3inuYYpiom`nDSkmqgm$`csub0u z;Y%%CnxAVnje}tMeM|y2Wz2{DA(@78%li)`n_yVIEmC;=yn&*>=Z+y zse!B>5N{Wp%9pNzz<+P0UcnJjYHzzcsce;>VPgu2BX^QlEM5ha90a1!g*?Ma?9?@E| z+t^Sv-}Ia)J@E*ySP_h-eo!9aocah7QTjsoX7MX}#S#AEe;|Ll(}gRh?o{|>9?`+JbscPGg znRQY}wpp25lLm4EuiR8fXg_o;ToK1nLwnP~#ap)oE!V?bm^6eFC{4l$j^16LbwJW- z;=a`GGkPfPT_S({g_=B$1yO0hsVuNpVt{TX(^f;gp5eLg^ji$@!%kkq@U98K=QvB} zrQaXoXD9JfO}u6#P|gmk!C_k^P=Q3jPA1Y}WQU#;ZRAG4I5lDe(=aqOxBKvSg&6nY zdd?Ik3*bFTyh~-`=V%)QLDABI4(5zr3zTdcb+ffVn2iF32nJ6GZ zbS^m)N#NpH)Q2PG3}>XLNeMNio>I*8oZ6MPV_-kb)#IIJN#~9L+ljVzA#fWB-kFOj zzJYW- zZD(&7r`5TszFw<~jTtssF~fi-Kyk(1Fw80)$VlL2hut9%&2tvDLh4;xSS!3{Qocfv6p?KChb`FBF^U~R) zU2=bzvzI-J5$?i-i^Vh`cerCoK+)&t(L$0H|PEUtmX8~JWq&fH# zPufA&ZQ%wtmu*}kX>Ki9dNwcS;8VPw*M*B`Up+s-+D+oygP}i(Zwt{+Cag(-*B`Cv z+J(uSNIJ&YWf!i|7jM$Bo_+PaS(+q%)5d=Zk_?4Mv)6Fw8rh#d8PXTiy zz{|~c0^`xB3*U~$r>9+b!#Lp{BY|n!HMYRY3gMaKr3(Pq8bMgz$eu`Z(5<`*oMI+Dk>>7V%u!)$bN(^@3VCNPK00%4 z97{|c1jT&X@NO8Xu@u%R@%3^TMBB-AD@0J6R6ooqI!&^Nd1K1h8R2#bgfC%uK88pH z%v(0R)iJ2j_$E0G0=r7?$cKRV)4jzSc!Y;hM)8qj98aJ4|X>#aYyzUuHxYT&s3KVy5nyHAhC{#?d+&O@UL5 zhwh$F19nd(^*dna!&4?vN_fnmZi;`TV#v4!4}A*iWp4fxJ#X4h;hIWL0=%sJ1Jm=Bv-}MG65G*cRgKoA zs42_Bsb)lvRkfhK&UZW6si+u3>nD1|esJvrp~}Iix*5M(?+Aq2PeF{ZS<8 zluFzV%@XVN$1jjrm`Hz{A(n_Wo{zr(Y7I?T_8?koee+~%036}v@=mgqTx{6I#ZgJy zR_-&(!-jVhGRHxXcG1vsxlYWLkAuWI*r!8S{hxB{fDYbUOr32QgNxzw#$mr0J~u|h z0r_b1?dfsjaO0rA0pL%ce{~4ZdrzN#l?A+O&%aE;6l1M6ODTUgrzG!XH z{!dzw-H^cMYq`uMTa&19I=oJ<6E`pZj1`v*Z;kXW^yx?1g}yJmj}1%mNpcpQXrg0v zkl5KxYjxsPW*R*IPk|(|!JH4UkexduGo7BM3l7U&VBGyhNaT1RSP4$tQ;ACrR7xSc z)+H~)B&imsYGZ$-Nz)nL%(hM=JdNX}QHh_NyAjA#Qwg^eyEd-vhoy)29-5a=8jQ0$zG3YZq41TXa zYDvri{`!2FN(4`YUFZurYZ#f)_|*4hRf(#7@xXJd9eRHiF~zh}8)>l2I2zyoX)qe! zf7SGn{oU31L3R|pyE-?;wx}}cns|=uf~l$KQj&miFNl5WH;vM0()=;po*60DM3Kh2 zPI7G$Czx|!>ZUd7>EyC`t2)+#i%`T0CN=@_GCgu7M+QVGsWwuEQWIJIkBa(ch}DX0 z;p@MySD1g;Y*JF5d9(idj|H7CcdLET+P@S%q_yaMZ|_?4xdH~81?hJwX|hqUzP!$Q zr;v0z6dOs%HZivmN?!Wdv#dnXV=ZYV{V%67cKwRj2d#v?ccJ{s%GXu(<|`{*?^EG= zhsxI5Dq8sN#>uLNBVQ)R{H%1Y1qmmjJsJJ+e`TvYt6nF`K_socCz z#pZgIns=zsytOj(wu;PKDlu2v!)rw?Dk?1(EbgwAl@DA|c@48tHs4w?d7Ie%H?5Go zy)u7tA^+AXk6Wjr>JF8UcdmF`r_yol3dc3;+}5gZ`|G}ipnlV(sH*n${H~RP*OA?*d-T~W0+%>(ev1S7K`Z;#ujt!oCEwCR^zW;3 z?;+l(+g7RfLDfu)EA#GCk$3k>ycHFAv(A6i!iu{UHEwHH*v(E-Tv4~yEY%fsD=X*j zS}`{ZaYcpP^2)dyR_Vhl;Wl0Ycc;p?`-t)1-wUOV)_=TA`enULTCfEk_#$b^miZk# zO`3N>%wpyzkJlHR#Md6Tf6wXSo0$1WMbapZS0XF92eQ{>(3<~)aZcsRvr`9x5@vsH z1RQVE#BkiT6|P#ZZx(~J(JEy8obs8Tw@%==65z!bLptA+rEi?BLsGjIID+7!E6FEF zzZE&WHmabH!Z0@V+N{7?A56xWh?Qxx?&B(@j1AIM(`4n@sIfZbZji>gCUd~A3s|u` z;Ng&!dJS_gCg;Jgp(*xME~U`?_K$xwKm6qDu=?XIn}eK))jmtnqRORekyy=Jku}bP?e&oMnoLM-;+l`%KkGet`kOp@f51mw zuBg(d5gVg%Bp>kB{f6nh&%5@O=HwQG@qLa8=|JsHzqn6{;Mi(Q)}3dqYsr6f_IZYc zWV^h?Q1(QJscTTX=C~1gWyDU{_q&BIj|-V=Vu@9`MxB)nSt_X0-eYMzA~;BKOVcX9 z;)%7C$fS06V|FyHjc6bd8{8icB%MmC<~D5Z4a4TyTr8cC`m!BwfPX71CggcHk)fVUnSVP_t*D6BeK_=-!*RqQ;0mZ3~7 zkRvj~!(|D;_G=>Y-cF}jsJ3wKF_}?w`SS#xKdEdnPWC|}l>_A7;!*94*du8yEDZH5 zy}5`3|2x6>rMXXm=6ZjrsA&CNFmBsmKF#I!mke4;(`dw}qSQ3kG)ib^At*7!=|{ci ztLFv;vs0&3dvgQ5IS>q~CM>A9c7r{~tE2}tCQ>mzD|`M&QUx#3np5-xa+i5Erju#l zr&F6sAuq8vlh%LZ^~w+$!jIFD;0l7J26%jb8UMnVjGL? z!e%vDt@?SnO_p;R58L>yHqY(x=yNgWlu)!z<(qUy zuaE0J^xeXIcoFL}NzL6<5~R*Z69A_fy^bsqfWRDpueIlN}kQQkn0h&`smV z{oG2oc7DTrn|^;c*c2Hr#nwW>?mf7~t9+T~OWd1yPsOt*yg_q2(V9Fb@a$>D9&mYn z=Hf?UY1^Gz(P_#8ZM{vC|DIgGzJQl-(^?lPH!V2596D_bqf0otX+2)4;>S0w&i{XD zkSyDmD-I-8aZvWGz(E8-Ez61G4e?U;JIf$;!UA~Yk z;g%MFLheXER0HLvPJmW-Tr9Y)qPdy&=;D@`YD4e9A5>MyN=rtJte~6;mW**Bh=$ zT(*CIPtQt+7c88Cl3s=+k}Udm_h8vTH%|FRa(n1p%!G0m#MS-mrUeV;>-o!@)}Nn8 zA8%SPrznThf4{1i^IocKaybySdKBlWSBTW=?CqLy`$Eg-kA(D{6Vg#xV%1gZhHtc$q#i&I&^4MAZ*cE&Y(~CY_#!Kr!V*E{U1igl`UMEteFS|8vp@6aWAK2mqXgR$H+SwgrEjg;rZZU1wB)5&!`5djJ3t0001O zVQFquWo>Y5VRU6KYIARH?OpwD+_tj+KTkpE2G}*=-L;e3dvJ`zxT)QwZWDJKyDcv4 zAf=^QEo+HXNXi@cB*1-^^JwQuE=Y-5eUMs7Yd5(kaRA3F@ndEE%|D5dY&jLsycB{&r zL!3ld!t@Wp=zn;-s(qhP2~_?HTo6W8H~Z5)^)GuJgTw)rs{emHKnNiZr*g@-D)=o4 zPma+9#Y?#2m_)aGwNeG9=(Q8s{lip zRw7}v!VHN(lL-=_6hWzoV$2YV1Vn$}tG`COYegB4%=^*K&YKNPmw9#b zU#&N7piniEu{n?_kzSRX?$1wzg&d0{B63`AYrHch!7dujv`+M6uiOqIL2rN73S)MI zIl)&Elx!Kqm_(`*x6OQ8l({Gx7?1SBQNfG%)=ZpS6Eb7mcv~{-j|-!&4SRpBt0bJ=kN~)t z6$WKmsJflTdc#(|zlt!u)^XMaha|#2j7L|aU6lQ@8IC;gn{yVVzRag(E(eLPp(5<^ z+}{0WPmRuKcO;^b{sU!$be0WL-iEWfu4jy{z+EeoBHwBoV%? zICrEBG4f62a`Bvk9|_eo9GAN-my0o>Mo}s}-2XzePHSn}Ty)XPvUnN`#gCPDmAI?= zs%an0PgxdsIbjDo>ng)`Yx8Kb_jjAMDQawC^eV)zNfXUZ2AYYY{&lXlN2!o3CVwh% zHA^{WUsal!?7uX%+Gc^Xq`E zv_Q|7fG*a(y&0RySu7m%NKHhpdXt0+sRH@+tex#3Rb)*l%12q~oPm!Md_^K6Z`Hb- z&`{+o%KTvg0JRXxK$r%)?R-H<=z@RoI9sd}Dw$=~G_`Xda-1xG zPJt5;=Sl%8rccpvge8tx`1a`K<`x>W+x*xRLf4K#a^jm#&zZy#I?{}D@IfV6ti9^G z5rmLwa7k)8x$at5Sb!q;*2Sf@Vz$Pt{uCan(!RiP62V}B)E31rKq8E?HW6Et_2au6 zpb|waY?^qgc&V^f0JixXc|RZ@_=tJiE?Y@uVQ zE+rfSyJfCXn>TF?Ws#g|t1En#bT4hlnRgh9yvj=P+-(FYPB-4z1qphiSB>IVYame z)OVQ#H9H0;SMEZmx0|B*#(7J_Mm>#@tEPcIy?ZNCZ^uWkyZM#>n(Xa&@h6Ub`q!!2 zYPz>wk@DDOyZqMTn>>{Z|6tcO3r@miK_v$qAA=t$#9m8yoNw<;YzbCps?BFn8q+P4 zBPv8|%Y~Sc4sI!qiSJBi><)h?!Ni7nX!wb#S?}1~1tHyYJRL2pkc76YQpCanPubtf zx-e;_SzsyBY7`4qi*6pR#Qs)R&?XZs@$-nST+BLVPc}E(W>4Fs?3Kl=jheH+Rsp#h zmmE`}b{2npm&FFzZsP}}BkllIHc-%0MA>S*vzu*9sqG;26pj3hu~C2i_*b9-g?^9!q7C$}=tB_11M)F*X(9&E2}bmc1*R2i)K5=m9sZsAPt^xGz_z z_K$k|y#m#;IU?<{%e=`UZQNh1=&IYG7}+0V36jKaL+uf9oPnbAt(gt`8}*F1!WXCx zgv4=z#=o2&?H~>dlj(nu`D>NT$c`PTC!n`{S6CFeY1bZr!%b}zQ>)MJ=9-3f-PKp$ zFBKhpbVma2BKCe@t6O5tOEO5^kM*@{vxo!u)kJo_u~a_ox2pDrgIrO8at-{!DA&r; zs0nrLlPqaKVciJM9joYiq%n-x&a~}xoFN#vV6`0sDKNU959WWaJJ#-AF?NF?xUHDF zHY95+hHeOUt_Nmr6ISla#K;ZD#mZM*pX6JpZb%yz<_HTdq1HFIOk+%&af$yzaFRZMvsW~>WV%(ks`H`uWI!GsOL zf_1}y^}v2@#C(5k!g_7Mc(upFwM0b=hRZUzeKA}2jMb`f=2Y{ISgcKE_umwIwHb3| z)!#0_n=V+59+;}$SgI}57lTx1wvo&Jg$cTk)32K_KwIG? z?3kY+SfBnFpB8LSIhkt3^0c65I%9Xro!GHDoqB1<=CopR`eJd)6t`e++?bn2RJuLJ z=FYJ-y)ZRH%=njg_dzb}uXi4NUUwc?rofhW9XO`U7jWr8H3bo-Brw-vSytk;YqKsW ztX`xf7~6lWQE~Z}QlUEp))?Fn^CI-?BDes-~}VH6eb9B`*9zValFQ;jak3{Jf%|F zWQX1Zp>;8CpQF) z7Zrag6b+4bruI4x!?7`z?AlMQs-wFMa&JV|2Nv$a{VR+}cZjk!c`jia_5EQb-TOkG z+WRz7WlcKk7}9B|i`sLpGa{-Hdr4iYI^rf;GB&At@o5oSYtw)eGP~KIaaeE=%SpC< zK9Q}&Rl59M%H$QuCDSy%`0m_Z=agkT#x;MYoVWrb+#dv^bF2r$dpH%hLPDI0wbRh6 zO*aruuYnV?wdk`KchQA~+kw4GRyaV)T&ss`@rG6tcV5<}Q ziYQ&$x0hUY8wL)N-yX44^ZVH0_F`bEJfUacGa87NJ^=@^{8r?!YreqTcm%dzuMskM(8OB34sdNou)e2=WbB&b zkZ8LT@8SOL%;yKbB+5L(fi+bGM96PSN<%d${(=4==r)|Nmye4BO{x7dVJClGZ5yo-BVt-yGtXeAtw4 zaoW_rP0;h$sR7P>3CB&hhea7w%@9=7P^6Iyl5^7{xW@L$5b4{1I+c+(r#Fu`6f7MK z`Ci649)FS?J`s{L8Xlf92?tMR`6o1w01I^@X#w0EdRee2Vk?D?zJdi)=hCQC_2}N>SBD0uE0VHzQ)s7%*SAm*wqCGiamnzSer6q>kT^tw z`z4WZyqadSCl!Cd^LE@5DW5|xS;$0wQd``FmmXS?KrWwNdVl*Sd4K7lB`7;wd_L?3 zK6g5s3K*eN4Le}G#iX{ws5@?;TO*&Z$nf6CaOEtqf=j5QlczPpyTiu2-Aj7+(D1<_ zPuF02LAa3f%yp~VhVroG8+|L(-zqc5L_alYajd@Lbk+%hiN+0W*3#XDkg z5)n)riAv940MG=fJf*osVa}P%(;W2*l5reXvP~Aqd=XjQ15VuvuvR^5A?5doWnWbG z;Nye;15ir=0u%!j000080Gx$ZTa*1DK@OaSR$D<`XH BigID DSPM CCF Connector now using JWT user token authentication | +| 3.0.0 | 13-01-2026 | First version of a BigID DSPM CCF Connector.
BigID DSPM CCF Connector now using JWT user token authentication
BigID DSPM Asset expansion and mapping|