Prerequisites:
Okta has Authentication and User Management APIs that reduce development time with instant-on, scalable user infrastructure. Okta's intuitive API and expert support make it easy for developers to authenticate, manage and secure users and roles in any application.
To install this example application, run the following commands:
git clone https://github.com/IBNAHMADMOHAMED1/kotlinWithOkta.git
cd kotlinWithOkta
This will get a copy of the project installed locally. To install all of its dependencies and start each app, follow the instructions below.
To create a new OIDC app for Spring Boot on Okta:
- Log in to your developer account, navigate to Applications, and click on Add Application.
- Select Web and click Next.
- Give the application a name and add
http://localhost:8080/login/oauth2/code/okta
as a login redirect URI. - Click Done.
Create an okta.env
file and copy your settings into it.
export OKTA_OAUTH2_ISSUER=https://{yourOktaDomain}/oauth2/default
export OKTA_OAUTH2_CLIENT_ID={yourClientId}
export OKTA_OAUTH2_CLIENT_SECRET={yourClientSecret}
NOTE: The value of {yourOktaDomain}
should be something like dev-123456.okta.com
. Make sure you don't include -admin
in the value!
Start your Spring Boot app by navigating to the notes-api
directory, sourcing this file, and starting your app.
cd notes-api
source okta.env
./gradlew bootRun
To create a new OIDC app for Angular on Okta:
- Log in to your developer account, navigate to Applications, and click on Add Application.
- Select Single-Page App and click Next.
- Give the application a name, set the login redirect URI to
http://localhost:4200/callback
, and click Done.
Copy the issuer
and clientId
into notes/src/app/auth-routing.module.ts
.
const oktaConfig = {
issuer: 'https://{yourOktaDomain}/oauth2/default',
redirectUri: window.location.origin + '/callback',
clientId: '{yourClientId}',
pkce: true
};
Navigate into the notes
folder and run:
npm install && npm start
Open your browser to http://localhost:4200, log in, and create notes to your hearts content!
This example uses the following open source libraries from Okta:
No help
Apache, see LICENSE.