Skip to content

Commit 10ffd78

Browse files
committed
Improve documentation on IMS Group sync
1 parent 1612ec2 commit 10ffd78

File tree

3 files changed

+52
-7
lines changed

3 files changed

+52
-7
lines changed

docs/AdvancedFeatures.md

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -441,12 +441,7 @@ Sometimes it is also useful to create intermediate paths that do not even contai
441441

442442
## Update Groups in External User Management Systems
443443

444-
Since AC Tool 3.1.0 there is support for creating/updating groups in [Adobe IMS](https://www.adobe.com/content/dam/cc/en/trust-center/ungated/whitepapers/corporate/adobe-identity-management-services-security-overview.pdf). Those are the groups which are exposed in the Adobe Admin Console and automatically used for [AEMaaCS](https://experienceleague.adobe.com/en/docs/experience-manager-cloud-service/content/security/ims-support) and also [AEM 6.5 hosted by AMS](https://experienceleague.adobe.com/en/docs/experience-manager-learn/foundation/authentication/adobe-ims-authentication-technical-video-understand).
445-
446-
To enable that feature, just set the property `externalSync` on the group to be synced in the YAML file to `true`.
447-
In addition an OSGi configuration for the leveraged [UMAPI](https://adobe-apiplatform.github.io/umapi-documentation/en/) needs to be provided in the configuration PID `biz.netcentric.cq.tools.actool.ims.IMSUserManagement`. This configuration should only be provided for run mode `author` to prevent the same groups from being created/updated multiple times. Also make sure you don't trigger the update too often due to [throttling of that API](https://adobe-apiplatform.github.io/umapi-documentation/en/API_introduction.html#throttling-and-error-handling).
448-
449-
Only the group id (called name in IMS context), the description, the admins and product profiles are set for synchronized groups in IMS. Memberships are not modified and external groups are never deleted. However you can update admin users of the managed groups (this involves both adding and removing users) with the additional flag `Also update existing external groups`. This is only available for manually triggered installations from the Web Console Plugin or the Touch UI Web UI. There is right now [no way to remove product profiles](https://github.com/Netcentric/accesscontroltool/issues/800) on already existing groups.
444+
Since AC Tool 3.1.0 there is support for creating/updating groups in [Adobe IMS](https://www.adobe.com/content/dam/cc/en/trust-center/ungated/whitepapers/corporate/adobe-identity-management-services-security-overview.pdf). This is described in [External Group Sync via IMS](ExternalGroupSyncIms.md).
450445

451446
## Health Check
452447

docs/Configuration.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ members | List of groups that are member of this group. May be provided as yaml
104104
migrateFrom | A group name assigned member users are taken over from. This is not supported for external user management. | optional
105105
virtual | If true, the group is *not* created in repository but only its permissions and isMemberOf relationships are made effective to other groups using the virtual group in isMemberOf. Flattens the effective group tree of users at runtime, but enlarges ACLs as set on path (instead of the virtual group, all referencing groups are listed in a particular path's ACL used by the virtual group). Useful for functionality fragments. False by default. Since v2.1.0 | optional
106106
unmanaged* Properties | Only use sparsely and with care, see [Advanced Features](AdvancedFeatures.md) | optional
107-
externalSync | Boolean flag determining whether the group should also be created or updated in a configured external user management system. For further details refer to [Update Groups in External User Management Systems](AdvancedFeatures.md#update-groups-in-external-user-management-systems). Since v3.1.0. | optional
107+
externalSync | Boolean flag determining whether the group should also be created or updated in a configured external user management system. For further details refer to [External Group Sync via IMS](ExternalGroupSyncIms.md). Since v3.1.0. | optional
108108

109109
Example:
110110

docs/ExternalGroupSyncIms.md

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
# External Group Sync (with IMS)
2+
3+
Since AC Tool 3.1.0 there is support for creating/updating groups in [Adobe IMS](https://www.adobe.com/content/dam/cc/en/trust-center/ungated/whitepapers/corporate/adobe-identity-management-services-security-overview.pdf). Those are the groups which are exposed in the Adobe Admin Console and automatically used for [AEMaaCS](https://experienceleague.adobe.com/en/docs/experience-manager-cloud-service/content/security/ims-support) and also [AEM 6.5 hosted by AMS](https://experienceleague.adobe.com/en/docs/experience-manager-learn/foundation/authentication/adobe-ims-authentication-technical-video-understand).
4+
5+
6+
## Architecture
7+
8+
Here is the different actors involved in IMS Group sync
9+
10+
11+
```mermaid
12+
---
13+
title: IMS Group Sync
14+
---
15+
sequenceDiagram
16+
box AEM
17+
participant ACTool
18+
participant AEM Groups
19+
participant AEM Users
20+
end
21+
box Adobe IMS
22+
participant IMS OIDC Login
23+
participant IMS Users
24+
participant IMS Groups
25+
end
26+
ACTool->>+IMS Groups: Create/Update ('externalSync')
27+
ACTool->>+AEM Groups: Create/Update groups synchronized with IMS ('externalId')
28+
Note over ACTool: 1. Triggered via Installation
29+
IMS Users ->> IMS Groups: Grant access via group membership
30+
Note over IMS Groups: 2. Authorization via Admin Console
31+
32+
IMS OIDC Login->>AEM Users: Create/Update
33+
IMS OIDC Login->>AEM Groups: Add members
34+
Note over IMS OIDC Login: 3.Authentication
35+
```
36+
37+
## Configuration
38+
39+
To enable that feature, just set the property `externalSync` on the group to be synced in the YAML file to `true`. In order to assign ACLs to those groups make sure that `externalId` is set correctly (otherwise the group on AEM side will not be used for IMS users).
40+
In addition an OSGi configuration for the leveraged [UMAPI](https://adobe-apiplatform.github.io/umapi-documentation/en/) needs to be provided in the configuration PID `biz.netcentric.cq.tools.actool.ims.IMSUserManagement`. This configuration should only be provided for run mode `author` to prevent the same groups from being created/updated multiple times. Also make sure you don't trigger the update too often due to [throttling of that API](https://adobe-apiplatform.github.io/umapi-documentation/en/API_introduction.html#throttling-and-error-handling).
41+
42+
## What is synchronized?
43+
44+
Only the
45+
- group id (called name in IMS context),
46+
- the description
47+
- the admins (set via OSGi configuration)
48+
- and product profiles (set via OSGi configuration)
49+
50+
are set for synchronized groups in IMS. Memberships are not modified and external groups are never deleted. However you can update admin users of the managed groups (this involves both adding and removing users) with the additional flag `Also update existing external groups`. This is only available for manually triggered installations from the Web Console Plugin or the Touch UI Web UI. There is right now [no way to remove product profiles](https://github.com/Netcentric/accesscontroltool/issues/800) on already existing groups.

0 commit comments

Comments
 (0)