Author: angela
Date: Thu Apr 21 08:21:03 2016
New Revision: 1740250

URL: http://svn.apache.org/viewvc?rev=1740250&view=rev
Log:
OAK-3211 : Document External Identity Management (WIP)

Added:
    
jackrabbit/oak/trunk/oak-doc/src/site/markdown/security/authentication/defaultusersync.md
Modified:
    
jackrabbit/oak/trunk/oak-doc/src/site/markdown/security/authentication/externalloginmodule.md
    
jackrabbit/oak/trunk/oak-doc/src/site/markdown/security/authentication/usersync.md

Added: 
jackrabbit/oak/trunk/oak-doc/src/site/markdown/security/authentication/defaultusersync.md
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-doc/src/site/markdown/security/authentication/defaultusersync.md?rev=1740250&view=auto
==============================================================================
--- 
jackrabbit/oak/trunk/oak-doc/src/site/markdown/security/authentication/defaultusersync.md
 (added)
+++ 
jackrabbit/oak/trunk/oak-doc/src/site/markdown/security/authentication/defaultusersync.md
 Thu Apr 21 08:21:03 2016
@@ -0,0 +1,59 @@
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+
+User and Group Synchronization : The Default Implementation
+--------------------------------------------------------------------------------
+
+### DefaultSyncHandler
+
+The [DefaultSyncHandler] comes with a set of configuration options that
+allow to specify the synchronization behavior (see below). All users/groups
+synchronized by this handler will get the following properties set.
+
+These properties allow to run separate task for periodical update and make sure
+the authorizables can later on be identified as external users.
+
+- `rep:externalId` : This allows to identify the external users, know the 
associated IDP and distinguish them from others.
+- `rep:lastSynced` : Sync timestamp to mark the external user/group valid for 
the configurable time (to reduce expensive syncing). Once expired, they will be 
validated against the 3rd party system again.
+
+
+<a name="configuration"/>
+### Configuration
+
+#### Configuration of the DefaultSyncHandler
+
+The default `SyncHandler` implementation is configured via [DefaultSyncConfig]:
+
+| Name                          | Property                      | Description  
                            |
+|-------------------------------|-------------------------------|------------------------------------------|
+| Sync Handler Name             | `handler.name`                | Name of this 
sync configuration. This is used to reference this handler by the login 
modules. |
+| User auto membership          | `user.autoMembership`         | List of 
groups that a synced user is added to automatically |
+| User Expiration Time          | `user.expirationTime`         | Duration 
until a synced user gets expired (eg. '1h 30m' or '1d'). |
+| User Membership Expiration    | `user.membershipExpTime`      | Time after 
which membership expires (eg. '1h 30m' or '1d'). |
+| User membership nesting depth | `user.membershipNestingDepth` | Returns the 
maximum depth of group nesting when membership relations are synced. A value of 
0 effectively disables group membership lookup. A value of 1 only adds the 
direct groups of a user. This value has no effect when syncing individual 
groups only when syncing a users membership ancestry. |
+| User Path Prefix              | `user.pathPrefix`             | The path 
prefix used when creating new users. |
+| User property mapping         | `user.propertyMapping`        | List mapping 
definition of local properties from external ones. eg: 'profile/email=mail'.Use 
double quotes for fixed values. eg: 'profile/nt:primaryType="nt:unstructured" |
+| Group auto membership         | `group.autoMembership`        | List of 
groups that a synced group is added to automatically |
+| Group Expiration Time         | `group.expirationTime`        | Duration 
until a synced group expires (eg. '1h 30m' or '1d'). |
+| Group Path Prefix             | `group.pathPrefix`            | The path 
prefix used when creating new groups. |
+| Group property mapping        | `group.propertyMapping`       | List mapping 
definition of local properties from external ones. |
+| | | |
+
+
+<!-- references -->
+[DefaultSyncHandler]: 
/oak/docs/apidocs/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/DefaultSyncHandler.html
+[DefaultSyncConfig]: 
/oak/docs/apidocs/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/DefaultSyncConfig.html

Modified: 
jackrabbit/oak/trunk/oak-doc/src/site/markdown/security/authentication/externalloginmodule.md
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-doc/src/site/markdown/security/authentication/externalloginmodule.md?rev=1740250&r1=1740249&r2=1740250&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-doc/src/site/markdown/security/authentication/externalloginmodule.md
 (original)
+++ 
jackrabbit/oak/trunk/oak-doc/src/site/markdown/security/authentication/externalloginmodule.md
 Thu Apr 21 08:21:03 2016
@@ -63,10 +63,8 @@ If a user needs re-authentication (for e
 if the user is not yet present in the local system at all), the login module 
must
 check the credentials with the external system during the `login()` method.
 
-Note:
-
-* users (and groups) that are synced from the 3rd party system contain a 
`rep:externalId` property. This allows to identify the external users and 
distinguish them from others.
-* to reduce expensive syncing, the synced users and groups have sync timestamp 
`rep:lastSynced` and are considered valid for a configurable time. if they 
expire, they need to be validated against the 3rd party system again.
+The details of the default user/group synchronization mechanism are described 
in section
+[User and Group Synchronization : The Default 
Implementation](defaultusersync.html)
 
 ##### Supported Credentials
 

Modified: 
jackrabbit/oak/trunk/oak-doc/src/site/markdown/security/authentication/usersync.md
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-doc/src/site/markdown/security/authentication/usersync.md?rev=1740250&r1=1740249&r2=1740250&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-doc/src/site/markdown/security/authentication/usersync.md
 (original)
+++ 
jackrabbit/oak/trunk/oak-doc/src/site/markdown/security/authentication/usersync.md
 Thu Apr 21 08:21:03 2016
@@ -24,9 +24,6 @@ The synchronization of users and groups
 after a user is successfully authenticated against the IDP or if it's no longer
 present on the IDP.
 
-Oak comes with a default implementation of the `SyncHandler` interface:
-[org.apache.jackrabbit.oak.spi.security.authentication.external.impl.DefaultSyncHandler].
-
 ### Synchronization API
 
 - [SyncManager]: factory for all configured `SyncHandler` implementations.
@@ -52,39 +49,9 @@ for the following tasks:
 ### Default Implementation
 
 Oak 1.0 provides a default implementation of the user synchronization API that 
allow
-to plug additional `SyncHandler` implementations.
-
-The [DefaultSyncHandler] itself comes with a set of configuration options that
-allow to specify the synchronization behavior (see below). All users/groups
-synchronized by this handler will get the following properties set:
-
-- `rep:externalId`
-- `rep:lastSynced`
-
-These properties allow to run separat task for periodical update and make sure
-the authorizables can later on be identitied as external users.
-
-### Configuration
-
-#### Configuration of the DefaultSyncHandler
-
-The default sync handler implementation is configured via [DefaultSyncConfig]:
-
-| Name                          | Property                      | Description  
                            |
-|-------------------------------|-------------------------------|------------------------------------------|
-| Sync Handler Name             | `handler.name`                | Name of this 
sync configuration. This is used to reference this handler by the login 
modules. |
-| User auto membership          | `user.autoMembership`         | List of 
groups that a synced user is added to automatically |
-| User Expiration Time          | `user.expirationTime`         | Duration 
until a synced user gets expired (eg. '1h 30m' or '1d'). |
-| User Membership Expiration    | `user.membershipExpTime`      | Time after 
which membership expires (eg. '1h 30m' or '1d'). |
-| User membership nesting depth | `user.membershipNestingDepth` | Returns the 
maximum depth of group nesting when membership relations are synced. A value of 
0 effectively disables group membership lookup. A value of 1 only adds the 
direct groups of a user. This value has no effect when syncing individual 
groups only when syncing a users membership ancestry. |
-| User Path Prefix              | `user.pathPrefix`             | The path 
prefix used when creating new users. |
-| User property mapping         | `user.propertyMapping`        | List mapping 
definition of local properties from external ones. eg: 'profile/email=mail'.Use 
double quotes for fixed values. eg: 'profile/nt:primaryType="nt:unstructured" |
-| Group auto membership         | `group.autoMembership`        | List of 
groups that a synced group is added to automatically |
-| Group Expiration Time         | `group.expirationTime`        | Duration 
until a synced group expires (eg. '1h 30m' or '1d'). |
-| Group Path Prefix             | `group.pathPrefix`            | The path 
prefix used when creating new groups. |
-| Group property mapping        | `group.propertyMapping`       | List mapping 
definition of local properties from external ones. |
-| | | |
+to plug additional `SyncHandler` implementations. 
 
+Default implementation is described in section [User and Group Synchronization 
: The Default Implementation](defaultusersync.html).
 
 ### Pluggability
 
@@ -110,5 +77,3 @@ or plug a new implementation of the `Syn
 [SyncedIdentity]: 
/oak/docs/apidocs/org/apache/jackrabbit/oak/spi/security/authentication/external/SyncedIdentity.html
 [SyncResult]: 
/oak/docs/apidocs/org/apache/jackrabbit/oak/spi/security/authentication/external/SyncResult.html
 [SyncException]: 
/oak/docs/apidocs/org/apache/jackrabbit/oak/spi/security/authentication/external/SyncException.html
-[DefaultSyncHandler]: 
/oak/docs/apidocs/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/DefaultSyncHandler.html
-[DefaultSyncConfig]: 
/oak/docs/apidocs/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/DefaultSyncConfig.html


Reply via email to