Pre-Requisites
Pre-Requisites
Complete these first:
Introduction
User access in a Fjall organisation is declared in code. TheidentityCentre block of fjall/organisation/infrastructure.ts describes your
users, groups, permission sets, and memberships; fjall deploy organisation
makes AWS IAM Identity Center match the declaration. There are no imperative
user commands that write to AWS behind your back — every access change is a
reviewable diff in your infrastructure file.
fjall user verbs —
safe file editors that produce the same diff:
Choosing an identity source
Thesource field declares who owns user objects. Pick the row that matches
your organisation:
external (IdP-owned, recommended)
Your IdP owns user creation and deletion; the config declares only group memberships. Fjall resolves each email against the identity store at deploy time.IDC_* error — see the
error ladder in the CLI reference.
When a user is deleted and recreated in your IdP, run fjall user rebind and
redeploy to re-bind memberships to the new identity.
fjall-managed
Fjall creates and manages the user objects. Declare each user with their memberships:users entry — the deploy fails
at synth time otherwise. Users receive an AWS invitation email and set up MFA
on first sign-in.
external-manual
SAML without SCIM: AWS requires user objects whose usernames mirror your IdP NameIDs. Declare them likefjall-managed users; memberships for emails not
declared in users fall back to a store lookup.
Groups, permission sets, and memberships
Every organisation deploys with three default groups:
Beyond the defaults, the config declares custom groups and permission sets:
accounts— which ACCOUNTS-map names the set is assigned to (default: all workload accounts).includeManagementAccount: trueis the only route to the management account.sessionDuration— ISO 8601, betweenPT1HandPT12H.managedPolicies/customerManagedPolicies/inlinePolicy/permissionsBoundary— the policy surface, mirroring AWS permission sets.- A permission set named after a default group merges over that default’s
spec;
defaultPermissionSets: falsesuppresses the three built-ins.
Day-to-day access changes
Use the CLI verbs to edit the declaration, then deploy:Verify provisioned users (external mode)
After connecting an IdP:- Log in to the AWS Console
- In the top-left search bar, type IAM Identity Center and click the first result

- Navigate to Users in the left navigation pane

- You should see your users listed
- Check that Status is Enabled
- Check that Created by shows SCIM

fjall user list --live shows in-store /
not-synced per declared email.
Next Steps
User CLI Reference
Full
fjall user verb reference and error ladder.Understanding Profiles
See how profiles map to AWS accounts.
Deploy Organisation
Deploy your AWS organisation.
Agent Tokens
Issue scoped API tokens for CI/CD and automation.