Skip to content

Commit 891d8a0

Browse files
committed
More edits
1 parent 5b774a1 commit 891d8a0

File tree

1 file changed

+51
-18
lines changed

1 file changed

+51
-18
lines changed

docs/user-manual/index.md

Lines changed: 51 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -450,7 +450,7 @@ credential store. You would keep only one of each pair and comment out or
450450
remove the other. Another example user-sync-config.yaml show how to reference
451451
umapi and ldap configuration files stored in a secure store that you define.
452452
453-
#### Configure connection to the Adobe Admin Console
453+
#### Configure connection to the Adobe Admin Console (UMAPI)
454454
455455
When you have obtained access and set up an integration with User
456456
Management in the Adobe I/O
@@ -464,7 +464,7 @@ have been assigned to your organization:
464464
- Technical Account ID
465465
- Private Certificate
466466
467-
Open your copy of the adobe-user-config.yml file in a plain-text
467+
Open your copy of the connector-umapi.yml file in a plain-text
468468
editor, and enter these values in the “enterprise” section:
469469
470470
```YAML
@@ -480,6 +480,19 @@ enterprise:
480480
specified in `priv_key_path`, and that it is readable only to the
481481
user account that runs the tool.
482482

483+
In User Sync 2.1 or later there is an alternative to storing the private key in a separate file; you can place
484+
the private key directly in the configuration file. Rather than using the
485+
`priv_key_path` key, use `priv_key_data` as follows:
486+
487+
priv_key_data: |
488+
-----BEGIN RSA PRIVATE KEY-----
489+
MIIJKAIBAAKCAge85H76SDKJ8273HHSDKnnfhd88837aWwE2O2LGGz7jLyZWSscH
490+
...
491+
Fz2i8y6qhmfhj48dhf84hf3fnGrFP2mX2Bil48BoIVc9tXlXFPstJe1bz8xpo=
492+
-----END RSA PRIVATE KEY-----
493+
494+
495+
483496
#### Configure connection to your enterprise directory
484497

485498
Open your copy of the connector-ldap.yml file in a plain-text
@@ -761,6 +774,7 @@ enterprise:
761774
client_secret: "Client secret goes here"
762775
tech_acct: "Tech account ID goes here"
763776
priv_key_path: "Path to private.key goes here"
777+
# priv_key_data: "actual key data goes here" # This is an alternative to priv_key_path
764778
```
765779

766780
### Testing your configuration
@@ -1688,9 +1702,9 @@ detailed in the next two sections.
16881702

16891703
#### Storing Credentials in OS Level Storage
16901704

1691-
To setup User Sync to pull credentials from the Python Keyring OS credential store, set the connector-umapi.yaml and connector-ldap.yaml files as follows:
1705+
To setup User Sync to pull credentials from the Python Keyring OS credential store, set the connector-umapi.yml and connector-ldap.yml files as follows:
16921706

1693-
connector-umapi.yaml
1707+
connector-umapi.yml
16941708

16951709
server:
16961710
@@ -1701,20 +1715,36 @@ connector-umapi.yaml
17011715
tech_acct: your tech [email protected]
17021716
secure_priv_key_data_key: umapi_private_key_data
17031717

1704-
Note the change of api_key, client_secret, and priv_key_path to secure_api_key_key, secure_client_secret_key, and secure_priv_key_data_key, respectively. These alternate configuration values give the key names to be looked up in keyring (or the equivalent service on other platforms) to retrieve the actual credential values. In this example, the credential key names are get_credential, umapi_client_secret, and
1705-
umapi_private_key_data.
1718+
Note the change of `api_key`, `client_secret`, and `priv_key_path` to `secure_api_key_key`, `secure_client_secret_key`, and `secure_priv_key_data_key`, respectively. These alternate configuration values give the key names to be looked up in keyring (or the equivalent service on other platforms) to retrieve the actual credential values. In this example, the credential key names are `umapi_api_key`, `umapi_client_secret`, and `umapi_private_key_data`.
1719+
1720+
The contents of the private key file is used as the value of `umapi_private_key_data` in the credential store.
17061721

17071722
The credential values will be looked up using the specified key names with the user being the org_id value.
17081723

17091724

1710-
connector-ldap.yaml
1725+
connector-ldap.yml
17111726

17121727
username: "your ldap account username"
17131728
secure_password_key: ldap_password
17141729
host: "ldap://ldap server name"
17151730
base_dn: "DC=domain name,DC=com"
17161731

1717-
The LDAP access password will be looked up using the specified key name with the user being the specified username value.
1732+
The LDAP access password will be looked up using the specified key name
1733+
(`ldap_password` in this example) with the user being the specified username
1734+
config value.
1735+
1736+
Credentials are stored in the underlying operating system secure store. The specific storage system depends in the operating system.
1737+
1738+
| OS | Credential Store |
1739+
|------------|--------------|
1740+
|Windows | Windows Credential Vault |
1741+
| Mac OS X | Keychain |
1742+
| Linux | Freedesktop Secret Service or KWallet |
1743+
1744+
On Linux, the secure storage application would have been installed and configured by the OS vendor.
1745+
1746+
The credentials are added to the OS secure storage and given the username and credential id that you will use to specify the credential. For umapi credentials, the username is the organization id. For the LDAP password credential, the username is the LDAP username. You can pick any identifier you wish for the specific credentials; they must match between what is in the credential store and the name used in the configuration file. Suggested values for the key names are shown in the examples above.
1747+
17181748

17191749
#### Storing Credential Files in External Management Systems
17201750

@@ -1725,38 +1755,41 @@ This is done by specifying, in the main User Sync configuration file, a command
17251755
To set this up, use the following items in the main configuration file.
17261756

17271757

1728-
user-sync-config.yaml (showing partial file only)
1758+
user-sync-config.yml (showing partial file only)
17291759

17301760
adobe_users:
1731-
connectors:
1732-
# umapi: connector-umapi.yaml # instead of this file reference, use:
1733-
umapi: $(read_umapi_config_from_s3)
1734-
# if a working directory is required:
1735-
# umapi $([temp]read_umapi_config_from_s3) # runs command in "temp" folder
1761+
connectors:
1762+
# umapi: connector-umapi.yml # instead of this file reference, use:
1763+
umapi: $(read_umapi_config_from_s3)
1764+
# if a working directory is required:
1765+
# umapi $([temp]read_umapi_config_from_s3) # runs command in "temp" folder
17361766
17371767
directory_users:
17381768
connectors:
1739-
# ldap: connector-ldap.yaml # instead of this file reference, use:
1740-
ldap: $(read_ldap_config_from_server)
1769+
# ldap: connector-ldap.yml # instead of this file reference, use:
1770+
ldap: $(read_ldap_config_from_server)
17411771

17421772
The general format for external command references is
17431773

17441774
$([working directory pathname]command args)
17451775

17461776
The working directory pathname is optional. If present, it is enclosed
17471777
in square brackets. If the working directory pathname is not fully qualified
1748-
it is interpreted as relative to the configuration file containing
1778+
it is interpreted as relative to the folder of the configuration file containing
17491779
the reference.
17501780

17511781
The remainder of the line is the shell command name
17521782
followed by any arguments. A command shell is launched by User Sync which
17531783
runs the command. The standard output from the command is captured and that
17541784
output is used as the umapi or ldap configuration file.
17551785

1756-
If the command terminates abnormally User Sync terminates with an error.
1786+
If the command terminates abnormally, User Sync will terminate with an error.
17571787

17581788
The command can reference a new or existing program or a script.
17591789

1790+
Note: If you use this technique for the connector-umapi.yml file, you will want to embed the private key data in connector-umapi-yml directly by using the priv_key_data key and the private key value. If you use the priv_key_path and the filename containing the private key, you would also need to store the private key somewhere
1791+
secure and have a command that retrieves it in the file reference.
1792+
17601793
### Scheduled task examples
17611794

17621795
You can use a scheduler provided by your operating system to run

0 commit comments

Comments
 (0)