Prerequisites
Before you start integrating Oten IDP into your application, make sure you have everything you need.
Important: Authorization requirements depend on your client type:
Confidential Clients (Server-side): JAR (JWT-Secured Authorization Request) is REQUIRED
Public Clients (SPAs/Mobile): PKCE is REQUIRED, JAR is FORBIDDEN
Legacy Application Support: If your confidential client application cannot implement JAR due to technical constraints, contact support@oten.dev to discuss alternative solutions.
📖 New to Oten IDP? Start with the Integration Flow Overview to understand the complete process.
🎯 What You'll Need
1. Oten Account Access
Or easily contact support to get your credentials.
2. Development Environment
3. JAR (JWT-Secured Authorization Request) Setup
For Confidential Clients (Server-side applications):
For Public Clients (SPAs/Mobile apps):
4. Technical Knowledge
5. Public Client Requirements (SPAs & Mobile Apps)
📖 Public Client? See the comprehensive PKCE Implementation Guide for SPAs and native mobile applications.
🔒 JAR Requirement
JAR for Different Client Types
Confidential Clients (Server-side applications):
JAR is required for enhanced security
Public Clients (SPAs/Mobile apps):
JAR may not be required if PKCE is properly implemented
Contact support to configure public client settings
Why JAR is Recommended
For confidential clients, JAR provides enhanced security:
Request Integrity: Authorization parameters cannot be tampered with
Confidentiality: Sensitive parameters are protected
Authentication: Requests are cryptographically signed
Replay Protection: Using JWT standard claims (jti, exp)
JAR Implementation Requirements
JAR Signing Methods
Oten IDP supports only two signing methods for JAR:
Method 1: HS256 (Client Secret) - Simpler
Uses your client secret to sign JAR requests.
Pros:
✅ Simple setup - no key generation needed
✅ Uses existing client secret
✅ Good for development and internal apps
Cons:
❌ Shared secret (less secure)
❌ Client secret must be protected
Method 2: EdDSA (Ed25519 Key Pair) - More Secure
Uses Ed25519 key pair for signing JAR requests.
Pros:
✅ Very secure - no shared secrets
✅ Industry standard for high security
✅ Recommended for production
Cons:
❌ More complex setup
❌ Key management required
Generate Ed25519 Key Pair for EdDSA
Using Node.js
Using OpenSSL (Command Line)
Using Python
🌐 JWKS Endpoint (Only for EdDSA)
Note: JWKS endpoint is only required for EdDSA signing. HS256 uses client secret and doesn't need JWKS.
For EdDSA (Ed25519) - JWKS Required
Example JWKS Response for EdDSA
For HS256 (Client Secret) - No JWKS Needed
When using HS256 with client secret, you don't need a JWKS endpoint because:
Oten already knows your client secret
HS256 uses symmetric signing (same secret for sign and verify)
No public key distribution needed
🏢 Register Your Application
🆘 IMPORTANT: Now, for easy setup, contact support to register your application because the developer portal is not ready yet.
Step 1: Access Developer Portal
Go to Oten Admin Portal
Log in with your Oten credentials
Navigate to "Applications" section
Step 2: Create New Application
Click "Create New Application"
Fill in application details:
Application Name: Your app's display name
Description: Brief description of your application
Application Type: Web Application, SPA, or Mobile
Redirect URIs: Where users return after login
JWKS URI: Your JWKS endpoint URL (e.g.,
https://yourapp.com/.well-known/jwks.json)
Step 3: Configure JAR Settings
Step 4: Save Credentials
After creating the application, save these important values:
Client ID: Public identifier for your application
JWKS URI: Your public key endpoint (must be accessible)
Endpoints: Authorization and token URLs
Understanding Your Credentials
Client ID
Public identifier for your application
Safe to include in client-side code
Used in JAR and token requests
JWKS URI
Public endpoint hosting your signing keys
Must be HTTPS in production
Must return valid JWKS format
Endpoints
You'll need these Oten endpoints:
📚 Choose JWT Library
Select a JWT library that supports RS256 signing:
JavaScript/Node.js
Python
Java
C#/.NET
Go
Development Environment Setup
Environment Variables
Create a .env file (never commit to version control):
Testing Checklist
Before proceeding, verify:
Getting Help
Documentation
Support Channels
Email: support@oten.live
Documentation: https://oten.gitbook.io/idp-support/
Status Page: status.oten.com (Coming Soon)
Ready to start coding? Let's begin with Step 1: Choose OAuth Library (Coming Soon)
Last updated