SailPoint ISC Dev Tools for Visual Studio Code
This extension is not developed, maintained or supported by SailPoint. It is a community effort to help manage Identity Security Cloud from Visual Studio Code.
Credits & Attribution
This extension is built on top of the work done by Yannick Beot and the original SailPoint Identity Security Cloud extension. I thank him for creating the foundation that made this enhanced version possible.
This fork adds additional features including:
- Enhanced search functionality (entity list search and global search page)
- Background tenant synchronization with state management
- Improved architecture with Sync Manager, State Engine, and Adapter Layer
- Contextual help and tooltips throughout the extension
- And many more improvements based on community feedback
The SailPoint ISC Dev Tools extension makes it easy to:
- Multi-tenant Management: Connect to and manage several tenants with background synchronization
- Search & Discovery:
- Search box in entity lists (identities, roles, access profiles, etc.) for quick filtering
- Dedicated global search page with SailPoint search queries, recent searches, and quick filters
- Configuration Management: Import and export config of a tenant
- Source Management: View, edit, aggregate, test, peek, ping, clone, or reset sources
- Transform Management: View, create, edit, delete, clone, and test transforms
- Provisioning: View, create, edit, delete provisioning policies of a source
- Schema Management: View, create, edit, delete schemas of a source
- Workflow Management: View, edit, enable, disable, export, import workflows and view execution history
- Rule Management: View, create, edit, delete connector rules and export/import the script of a rule
- Service Desk: View, edit, delete service desk integrations
- Identity Management: View, edit, delete identity profiles and lifecycle states, refresh identities, search identities
- Data Import/Export: Import/Export Accounts (import for delimited files only), uncorrelated accounts, entitlement details
- Access Management: View, edit, create, delete, export, import access profiles
- Role Management: View, edit, create, delete, export, import roles, and dimensions
- Form Management: View, edit, create, delete, export, import forms
- Attribute Management: View, edit, create, delete search attribute config and identity attributes
- Application Management: View, edit, create, delete applications
- Certification Campaigns: View, report, escalate, send reminders, reassign to access item owners or reassign based on a file, approve in bulk
Installation
Go to the extension menu or press Ctrl+Shift+X and look for the extension "SailPoint ISC Dev Tools". Click on the button Install.
The VSIX can be installed from the extension menu. Press Ctrl+Shift+X and in the menu, click Install from VSIX....
Building from Source
To build the extension from source:
- Clone the repository:
git clone https://github.com/asuka-405/sp-isc-devtools_vscode.git cd sp-isc-devtools_vscode - Install dependencies:
npm install - Build the extension:
npm run esbuild - Package as VSIX (optional):
npm install -g @vscode/vsce vsce package
Add new tenant
The extension supports several tenants.
Open the Command Palette with Ctrl+Shift+P (Windows or Linux) or Cmd+Shift+P (macOS) to find the command "ISC: Add tenant...".
Alternatively, you can click on the + in the SailPoint view.
You can add a tenant by using a Personal Access Token (PAT) or by using a short-lived access token (like one you can get from https://yourtenant.identitynow.com/ui/session).
┌─────────────────────────────────────────────────────────┐
│ VS Code Command Palette │
├─────────────────────────────────────────────────────────┤
│ > ISC: Add tenant... │
│ │
│ ┌──────────────────────────────────────────────────┐ │
│ │ Add Tenant Configuration │ │
│ ├──────────────────────────────────────────────────┤ │
│ │ Tenant Name: [company-dev____________] │ │
│ │ Authentication Method: [PAT ▼] │ │
│ │ Client ID: [________________] │ │
│ │ Client Secret: [****************] │ │
│ │ │ │
│ │ [ Cancel ] [ Add Tenant ] │ │
│ └──────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────┘
It is also possible to add a tenant by using the following URIs:
vscode://ArchMedia.sp-isc-devtools/addtenant?tenantName=company&accessToken=eyJh...&authenticationMethod=AccessToken or
vscode://ArchMedia.sp-isc-devtools/addtenant?tenantName=company&clientId=806c451e057b442ba67b5d459716e97a&clientSecret=***&authenticationMethod=PersonalAccessToken.
Search Functionality
Entity List Search
All entity list views (identities, roles, access profiles, etc.) now include a search box at the top of the page. Simply type in the search box to filter entities by name in real-time. This works with pagination - the search filters the currently loaded page.
Example: When viewing identities, type "John" in the search box to quickly find all identities with "John" in their name.
Global Search
The extension includes a powerful global search feature that allows you to search across multiple SailPoint ISC resources using SailPoint's native search syntax.
Accessing Global Search:
- Click the "Global Search" button in the tenant view
- Use Command Palette:
ISC: Global Search... - Right-click on a tenant in the tree view and select "Global Search"
Features:
- Search Query Input: Enter SailPoint search queries (e.g.,
name:John OR email:*@example.com) - Recent Searches: Quick access to your last 5 search queries
- Quick Filters: Pre-built filters for common searches:
- Modified Today / This Week
- Active / Inactive Identities
- Privileged Access
- Requestable Roles
- Orphan Accounts
- Search Results: View results in a table with clickable items that open the resource directly
Search Query Examples:
name:John- Find resources with "John" in the nameemail:*@example.com- Find identities with email domainlifecycleState.name:active- Find active identitiesmodified:[now-7d TO now]- Find items modified in the last 7 days
Release Notes
Version 0.1.1
- Workflow Fixes: Fixed GitHub Actions workflow syntax errors for marketplace publishing
- Packaging Improvements: Enhanced VSIX packaging with proper file exclusions
- Testing Tools: Added local workflow testing script for development
Version 0.1.0-alpha
First alpha release of SailPoint ISC Dev Tools - A comprehensive development environment for SailPoint Identity Security Cloud.
This extension provides a complete set of tools for managing, developing, and maintaining SailPoint ISC configurations, built on top of the excellent foundation by Yannick Beot's original extension.
🔍 Search & Discovery
- Entity List Search: Real-time search box in all entity list views (identities, roles, access profiles, etc.) for instant filtering
- Global Search Page: Dedicated search interface with full SailPoint search query syntax support
- Recent Searches: Quick access to your last 5 search queries
- Quick Filters: Pre-built filters for common scenarios (Modified Today/Week, Active/Inactive Identities, Privileged Access, Requestable Roles, Orphan Accounts)
- Clickable Results: Search results are directly clickable and open resources instantly
🏢 Multi-Tenant Management
- Background Synchronization: Automatic data refresh for up to 4 active tenants simultaneously (60-second refresh interval)
- Sync Manager: Centralized sync state management with health monitoring and error tracking
- State Engine: In-memory caching of tenant data for lightning-fast access
- Sync Management UI: Visual interface to activate/pause tenant synchronization with one click
- Sync Status Indicators: Real-time sync status in tree view with health indicators (🟢 Active, ⏸️ Paused, 🔴 Error)
⚡ Architecture & Performance
- Adapter Layer: API-agnostic data access layer with intelligent caching and fallback mechanisms
- Command Bus: Centralized command handling with validation and event-driven architecture
- Pagination Support: Enforced 250-item limit per page for optimal performance and API compliance
- Non-blocking UI: Fully asynchronous operations ensuring responsive user experience
- Efficient Caching: Smart caching strategy reduces API calls and improves performance
💡 Contextual Help & User Experience
- Help Service: Comprehensive contextual help system throughout the extension
- Tooltips: Helpful tooltips on all buttons, inputs, and UI elements
- Help Icons: Clickable help icons (ℹ️) with detailed information and documentation links
- Enhanced Tree Tooltips: Rich tooltips with sync status, health, and contextual guidance
- Documentation Links: Direct links to official SailPoint documentation where applicable
Credits
Built on top of the excellent work by Yannick Beot's SailPoint Identity Security Cloud extension. We extend our gratitude to Yannick for creating the foundation that made this enhanced version possible.