...
You may run it from the installation folder by opening the command line and calling the executable: CXO.User.Synchronization.Client.CLI.exe
Running it in the following way will list all the options / parameters available../CXO.User.Synchronization.Client.CLI.exe
will list all the options / parameters available.
Parameters
Parameter | Short | Description |
---|---|---|
--cxoUrl | N/A | URL of CXO |
--idpUrl | N/A | URL of the CXO identity provider. |
--clientId | -c | Identity provider - client Id. See the Security section on how to obtain this value. |
--privateKey | -p | Identity provider - client private key. See the Security section on how to obtain this value. |
--input | -i | Path of the input file. See the Inputs section. |
--applicationsFile | -a | The file path to a list of applications to synchronize. |
--masterDatabaseConnectionString | -m | Connection string of the master database. Using this option all applications (from given master database) will be synchronized. If this option is set, (-a --applicationsFile) option should not be set. |
--filterApplications | -f | A comma-separated list of application |
--maxParallelism | -P | Default(1) . Represents the max number of applications to synchronize in parallel. This value should be at most equal to the amount of CXO instances available. |
--init | N/A | Initializes the input file and applicationsFile with an example text at the path specified to each parameter. |
...
These URLs can be easily found in the CXO Configurator → Settings tab (see example below)
...
If you call the following from the command line./CXO.User.Synchronization.Client.CLI.exe --cxoUrl "<your-cxo-url>" --idpUrl "<your-idp-url>"
you would see that cxoUrl and idpUrl are no longer listed as missing required parameters
Security
In order for CXO to process the User synchronization request, the CLI to be authenticated by the CXO Identity Provider (IDP). This is done by associating the CLI with a certain type of IDP client.
...
If you call the following from the command line./CXO.User.Synchronization.Client.CLI.exe --cxoUrl "<your-cxo-url>" --idpUrl "<your-idp-url>" -p "<your-private-key>" -c "<your-client-id>"
you would see that privateKey and clientId are no longer listed as missing required parameters
...
Code Block | ||||
---|---|---|---|---|
| ||||
$clientId = 'TestUserSynchronization' $clientSecret = 'MIIEp....<the rest of yourthe private key>' $cxoUrl = 'https://cxo-dev-t03.cxo-dev.local' $idpUrl = 'https://cxo-dev-t03.cxo-dev.local/idp' $appsFile = '.\applications.json' $inputFile = '.\inputusers.json' $exe = './CXO.User.Synchronization.Client.CLI.exe' & $exe "--cxoUrl" $cxoUrl "--idpUrl" $idpUrl "-c" $clientId "-p" $clientSecret "-i" $inputFile "-a" $appsFile | Write-Host |
...