This example demonstrates how to setup a io.Manager instance to use Okta authentication (OAuth2 & OIDC).
io.Manager requires a database to connect to - this example uses MongoDB, but you can use any other of the supported databases. You will need to either have a local instance or setup a remote database to connect to. For more information visit our Documentation page on the subject: https://docs.interop.io/manager/databases/overview/index.html
io.Manager requires a license key to operate. To acquire a license key, contact us at sales@interop.io.
In your Okta admin panel go to the Applications menu and select Create App Integration.
When asked, select OIDC - OpenID Connect for the Sign-in method and Single-Page Application for the Application type.
Click the Refresh Token checkbox under Grant type and Core grants.
Make sure to enter the correct redirect urls for the applications.
- Set "Sign-in redirect URIs" to
http://localhost:3000/admin/callback - Set "Sign-out redirect URIs" to
http://localhost:3000/admin/logout
-
Navigate to the
io-manager-serverdirectory. -
Open
src/index.tsand look for theTODOcomments. -
Run the following commands to install the npm packages and start the server:
npm install
npm audit fix
npm run start
-
Navigate to the
io-manager-admin-uidirectory. -
Open
src/main.tsxand fill out the okta client options. Look for theTODOcomments. -
Run the following commands to install the npm packages and start the application:
npm install
npm audit fix
npm run start
- The Admin UI can be found at http://localhost:3000/admin
To configure io.Connect Desktop to connect to io.Manager, add the following configuration in system.json:
{
// other configuration above
// copy from here....
"server": {
"enabled": true,
"url": "http://localhost:4356/api"
}
// ...to here
}This will add the Server as an additional application store. If you want the io.Manager Server to be the only app store, set the "appStores" top-level key to an empty array.
This will also instruct io.Connect Desktop to store Layouts and Application Preferences on the io.Manager Server.
To configure io.Connect Desktop to use the okta sign-in page add the following configuration in system.json:
{
// other configuration above
// copy from here....
"ssoAuth": {
"authController": "sso",
"options": {
"url": "http://localhost:3000/gd",
"keepAlive": true,
"window": {
"width": 540,
"height": 660,
"mode": "flat"
}
}
}
// ...to here
}