A command-line tool for simulating and managing a SCIM (System for Cross-domain Identity Management) directory. This tool allows you to create and manage users and groups, simulating a real SCIM-compliant identity provider.
brew tap Avinash-Kamath/brews
brew install scim-simBefore using the tool, you need to set up your SCIM configuration:
scim-sim setupThis will prompt you for:
- SCIM Base URL - The endpoint of your SCIM service (e.g., https://api.example.com/scim/v2)
- SCIM Auth Token - Your authentication token
Configuration is stored in ~/.scim_config.json. You can view your current configuration with:
scim-sim config# Add a new user (generates random user data)
scim-sim add-user
# Remove a user
scim-sim remove-user <user-id># Create a new group
scim-sim create-group "Engineering Team"
# Delete a group and its members
scim-sim delete-group <group-id>
# Add user to group
scim-sim add-to-group <user-id> <group-id>
# Remove user from group
scim-sim remove-from-group <user-id> <group-id># Show complete directory structure
scim-sim showThis will display a tree view of your directory structure, showing all groups and users.
Example output:
📂 Directory
├── 👥 Groups
│ ├── Engineering Team │ ID: dirgrp_1234567890123456
│ │ ├── 👤 avinash.kamath@example.com │ ID: dirusr_8913202356420102
│ │ └── 👤 srini.k@example.com │ ID: dirusr_4123456789012345
│ │
│ └── Product Team │ ID: dirgrp_6789012345678901
└── 👤 Ungrouped Users
└── ravi@example.com │ ID: dirusr_6789012345678901
setup- Configure SCIM settingsconfig- View current configurationadd-user- Create a new userremove-user- Delete a usershow- Display directory structurecreate-group- Create a new groupdelete-group- Delete a group and its membersadd-to-group- Add user to groupremove-from-group- Remove user from group