You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
#### Configure connection to your enterprise directory
484
497
485
498
Open your copy of the connector-ldap.yml file in a plain-text
@@ -761,6 +774,7 @@ enterprise:
761
774
client_secret: "Client secret goes here"
762
775
tech_acct: "Tech account ID goes here"
763
776
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
764
778
```
765
779
766
780
### Testing your configuration
@@ -1688,9 +1702,9 @@ detailed in the next two sections.
1688
1702
1689
1703
#### Storing Credentials in OS Level Storage
1690
1704
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:
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.
1706
1721
1707
1722
The credential values will be looked up using the specified key names with the user being the org_id value.
1708
1723
1709
1724
1710
-
connector-ldap.yaml
1725
+
connector-ldap.yml
1711
1726
1712
1727
username: "your ldap account username"
1713
1728
secure_password_key: ldap_password
1714
1729
host: "ldap://ldap server name"
1715
1730
base_dn: "DC=domain name,DC=com"
1716
1731
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
+
1718
1748
1719
1749
#### Storing Credential Files in External Management Systems
1720
1750
@@ -1725,38 +1755,41 @@ This is done by specifying, in the main User Sync configuration file, a command
1725
1755
To set this up, use the following items in the main configuration file.
1726
1756
1727
1757
1728
-
user-sync-config.yaml (showing partial file only)
1758
+
user-sync-config.yml (showing partial file only)
1729
1759
1730
1760
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
1736
1766
1737
1767
directory_users:
1738
1768
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)
1741
1771
1742
1772
The general format for external command references is
1743
1773
1744
1774
$([working directory pathname]command args)
1745
1775
1746
1776
The working directory pathname is optional. If present, it is enclosed
1747
1777
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
1749
1779
the reference.
1750
1780
1751
1781
The remainder of the line is the shell command name
1752
1782
followed by any arguments. A command shell is launched by User Sync which
1753
1783
runs the command. The standard output from the command is captured and that
1754
1784
output is used as the umapi or ldap configuration file.
1755
1785
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.
1757
1787
1758
1788
The command can reference a new or existing program or a script.
1759
1789
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
+
1760
1793
### Scheduled task examples
1761
1794
1762
1795
You can use a scheduler provided by your operating system to run
0 commit comments