Releases: Tools4everBV/HelloID-Conn-Prov-Target-Blacklist-SQL
Releases · Tools4everBV/HelloID-Conn-Prov-Target-Blacklist-SQL
v2.0.1
Changed
- Added IMPORTANT callout in README documenting field mapping requirement for correlation attribute (
accountFieldName) incheckOnExternalSystemsAd.ps1configuration, emphasizing that it must be mapped for ALL operations (create, update, etc.) where the uniqueness check is used
Fixed
- Corrected count check in checkOnExternalSystemsAd.ps1 to use
$selectRowCountvariable instead of@($querySelectResult).countfor more reliable result counting
v2.0.0
This is a major release of HelloID-Conn-Prov-Target-Blacklist-SQL with significant enhancements to match the CSV blacklist connector functionality and Tools4ever V2 connector standards, plus major improvements to code maintainability, configurability, and operational transparency.
Added
- Retention period support with configurable duration for deleted values and automatic expiration logic
retentionPeriodconfiguration parameter to specify how many days deleted values remain blocked before reuse- Cross-check validation via
crossCheckOnconfiguration to validate uniqueness across different attribute types (e.g., checking if an email exists as a proxy address) keepInSyncWithfunctionality to replace legacysyncIterationsapproach, providing automatic cascading of non-unique status across related fields$allowSelfUsageconfiguration incheckOnExternalSystemsAd.ps1to control whether persons can reuse their own values (replaces$excludeSelf)$fieldsToCheckobject-based configuration incheckOnExternalSystemsAd.ps1to replace simple$attributeNamesarray- Skip optimization to automatically skip redundant database queries once a field is marked non-unique
- Action types
OtherEmployeeIdandMultipleFoundfor enhanced error handling with detailed error messages - Database columns
whenCreatedandwhenUpdatedwith datetime2(7) precision for timestamp tracking - PowerShell-based timestamp generation using
Get-Date -Format "yyyy-MM-ddTHH:mm:ss.fff"for consistent datetime2(7) precision - Detailed audit logging in Update and Delete actions showing exactly which fields are modified and their new values
#region Configurationblock incheckOnExternalSystemsAd.ps1for better code organization- README section "Configuring checkOnExternalSystemsAd.ps1" with detailed configuration examples
- README warnings for retention period synchronization and initial configuration requirements
- README use cases section explaining practical applications of the blacklist connector
- README supported features table documenting available capabilities
Changed
- Create script restructured to match CSV connector format with improved action calculation logic
- Update script aligned with Create script logic including retention period validation
- Delete script rewritten to process per-attribute instead of bulk updates
whenDeletedcolumn type changed fromdatetodatetime2(7)for precision and consistency- checkOnExternalSystemsAd.ps1 field checking logic enhanced with retention period awareness and cross-attribute validation
- fieldMapping.json updated to match CSV structure (employeeId only for Create, attributes for Create/Update/Delete) with Complex mapping mode using conditional logic
- Credential initialization in checkOnExternalSystemsAd.ps1's Invoke-SQLQuery function now properly creates SqlCredential object
- Configuration comments expanded with detailed explanations of field checking logic, cross-checking, and field synchronization
- README lifecycle action descriptions enhanced with detailed scenario coverage including retention period behavior
- README additional scripts descriptions improved with retention period logic details
- Logging changed from Write-Information intentions to result-based logging with adjusted log levels (unique=Information, non-unique=Warning)
- Audit logs moved inside non-dryRun blocks to prevent audit entries during preview mode
- SQL UPDATE queries simplified to only modify
whenDeletedandwhenUpdatedfields - Account reference moved to absolute top of create script for consistency
- Update and Delete actions refactored to build SET clauses dynamically from object properties
- Logging in checkOnExternalSystemsAd.ps1 improved to distinguish between self-usage scenarios and retention period validations
Deprecated
- Legacy syncIterations and syncIterationsAttributeNames approach replaced by keepInSyncWith configuration
Removed
whenDeletedfield from fieldMapping.json (now managed internally by scripts)- Unnecessary Write-Information statements for action intentions
v1.1.0
What's Changed
- New (Psv2) version of the Blacklist connector by @Rick-Jongbloed in #3
New Contributors
- @Rick-Jongbloed made their first contribution in #3
Full Changelog: v1.0.0...v1.1.0