website/docs: update preview status of different features (#11817) * remove preview from RAC * add preview page instead of info box * remove preview from rbac * add preview to gdtc * add preview to kerberos source --------- Signed-off-by: Jens Langhammer <jens@goauthentik.io> Co-authored-by: Jens L. <jens@goauthentik.io>
		
			
				
	
	
		
			77 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			77 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
---
 | 
						|
title: SCIM Source
 | 
						|
---
 | 
						|
 | 
						|
<span class="badge badge--preview">Preview</span>
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
The SCIM source allows other applications to directly create users and groups within authentik. SCIM provides predefined schema for users and groups, with a RESTful API, to enable automatic user provisioning and deprovisioning, SCIM is supported by applications such as Microsoft Entra ID, Google Workspace, and Okta.
 | 
						|
 | 
						|
The base SCIM URL is in the format of `https://authentik.company/source/scim/<source-slug>/v2`. Authentication is done via Bearer tokens that are generated by authentik. When an SCIM source is created, a service account is created and a matching token is provided.
 | 
						|
 | 
						|
## First steps
 | 
						|
 | 
						|
To set up an SCIM source, log in as an administrator into authentik. Navigate to **Directory->Federation & Social login**, and click on **Create**. Select the **SCIM Source** type in the wizard, and give the source a name.
 | 
						|
 | 
						|
After the source is created, click on the name of the source in the list, and you will see the **SCIM Base URL** which is used by the SCIM client. Use the **Click to copy token** button to copy the token which is used by the client to authenticate SCIM requests.
 | 
						|
 | 
						|
## Supported Options & Resource types
 | 
						|
 | 
						|
### `/v2/Users`
 | 
						|
 | 
						|
Endpoint to list, create, update and delete users.
 | 
						|
 | 
						|
### `/v2/Groups`
 | 
						|
 | 
						|
Endpoint to list, create, update and delete groups.
 | 
						|
 | 
						|
There is also the `/v2/ServiceProviderConfig` and `/v2/ResourceTypes`, which is used by SCIM-enabled applications to find out which features authentik supports.
 | 
						|
 | 
						|
## SCIM source property mappings
 | 
						|
 | 
						|
See the [overview](../../property-mappings/index.md) for information on how property mappings work.
 | 
						|
 | 
						|
### Expression data
 | 
						|
 | 
						|
Each top level SCIM attribute is available as a variable in the expression. For example given an SCIM request with the payload of
 | 
						|
 | 
						|
```json
 | 
						|
{
 | 
						|
    "schemas": [
 | 
						|
        "urn:scim:schemas:core:2.0",
 | 
						|
        "urn:scim:schemas:extension:enterprise:2.0"
 | 
						|
    ],
 | 
						|
    "userName": "foo.bar",
 | 
						|
    "name": {
 | 
						|
        "familyName": "bar",
 | 
						|
        "givenName": "foo",
 | 
						|
        "formatted": "foo.bar"
 | 
						|
    },
 | 
						|
    "emails": [
 | 
						|
        {
 | 
						|
            "value": "foo.bar@authentik.company",
 | 
						|
            "type": "work",
 | 
						|
            "primary": true
 | 
						|
        }
 | 
						|
    ],
 | 
						|
    "title": "",
 | 
						|
    "urn:scim:schemas:extension:enterprise:2.0": {
 | 
						|
        "department": ""
 | 
						|
    }
 | 
						|
}
 | 
						|
```
 | 
						|
 | 
						|
The following variables are available in the expression:
 | 
						|
 | 
						|
-   `schemas` as a list of strings
 | 
						|
-   `userName` as a string
 | 
						|
-   `name` as a dictionary
 | 
						|
-   `emails` as a dictionary
 | 
						|
-   `title` as a string
 | 
						|
-   `urn_scim_schemas_extension_enterprise_2_0` as a dictionary
 | 
						|
 | 
						|
    :::info
 | 
						|
    Top-level keys which include symbols not allowed in python syntax are converted to `_`.
 | 
						|
    :::
 |