Okta Org (Tenant)
What an Okta org really is, what lives inside it, how sign-ins and users flow through it, and how to design, secure and run one with confidence.
Imagine a huge apartment building with thousands of homes. Every home has its own front door, its own lock, its own furniture and its own house rules. The families share the building’s pipes, power and security desk, but nobody can walk into another family’s home. Now imagine that instead of a family, the home holds all the digital identities of a company: every employee, every contractor, every app they use and every rule about who may enter what.
That home is an Okta org, also called an Okta tenant. Almost everything you do in Okta happens inside one. This guide explains it from the ground up: what it is, what is inside it, how it behaves when people sign in, how to split or combine orgs, and how to keep one safe and healthy.
1The Big Picture: What Is an Okta Org?
Before details, let us settle the meaning of the word, why companies need one, and how “org” and “tenant” relate.
The problem identity systems solve
Every company uses dozens or hundreds of apps: email, chat, payroll, code hosting, customer tools. Without a central system, each app keeps its own list of users and its own passwords. People forget passwords, leavers keep access, and nobody can answer a simple question like “who can open the finance system today?”
An identity provider fixes this by keeping one trusted list of people and one set of sign-in rules. Apps ask the identity provider “is this person who they say they are?” instead of checking passwords themselves. Okta, founded in 2009, is one of the best-known cloud identity providers.
Org and tenant: two words, one idea
Okta delivers its service from shared cloud infrastructure. Each customer gets a logically separate, private slice of it. Okta calls that slice an org. The industry word for such a slice is a tenant, which is why people write “Okta org (tenant)”. They mean the same thing: your own isolated identity space inside a shared service.
Think of a bank vault room full of safe-deposit boxes. The bank building, guards and cameras are shared. Your box is yours alone, opened only with your key, and nobody else can see inside. Okta is the bank, and your org is your box.
Okta’s workforce product calls its slice an “org”. The separate Auth0 product, which Okta also owns, calls its slice a “tenant”. If you read both vocabularies in the same article, remember they are different products with similar ideas.
2Core Concepts You Need First
A handful of plain ideas explain almost everything in an org. Learn these words once and the rest becomes easy.
User
A person, or sometimes a service account, with a profile such as name, email and department. Each user has a status like active or suspended.
Group
A named collection of users, like “Finance Team”. Groups make it easy to give many people the same access at once.
Application
Any app or service that trusts the org to sign people in. Okta calls the setup an app integration.
Authentication
Proving who you are, for example with a password plus a code on your phone.
Authorization
Deciding what a proven person may do, such as read invoices but not approve them.
Single sign-on
Sign in once and open many apps without typing credentials again, often shortened to SSO.
Three protocols you will hear about
Apps and Okta talk using agreed languages called protocols. SAML is an older, XML-based language common in business apps. OpenID Connect, or OIDC, is a modern language built on top of OAuth 2.0 that works well for web, mobile and APIs. SCIM is a language for creating, updating and removing user accounts inside apps automatically. SAML and OIDC are about signing in. SCIM is about keeping accounts in step.
Authentication is showing your passport at the airport desk. Authorization is the boarding pass that says which flight and which seat you may use. Single sign-on is when the airport lets that same passport check open several doors without a new check each time.
3The Anatomy of an Org
Open an org and you will find the same set of building blocks every time. Here is the map.
| Building block | What it holds | Everyday comparison |
|---|---|---|
| Universal Directory | Users, groups, profile attributes and mappings | The population register of a city |
| Applications | Integrations to cloud and on-premises apps | The doors in the city |
| Policies and rules | Sign-in, MFA, password and session rules | Guards at each door |
| Authorization servers | Issue tokens with scopes and claims | The passport office |
| Administrators and roles | Who may configure what | Key holders |
| Network zones | Trusted and blocked locations | Border control |
| System Log | Record of events | Security camera archive |
| Branding and domains | Look of sign-in pages, custom web address, email templates | Signs and uniform |
| Hooks and workflows | Automation and custom logic | Town helpers who run errands |
An org is a walled city. The directory is the register of residents. Apps are the buildings. Policies are the guards who decide who may enter which building and when. The authorization server is the office that stamps travel papers. Logs are the camera footage. And admin roles decide who holds which keys to the city.
Everything in this table belongs to the org and does not appear in any other org. That is the key point of the tenant idea: your configuration and your data are yours, separate from every other customer.
4Org Addresses, Types and Identifiers
Every org has a web address, and the address tells you a surprising amount about it.
The web addresses of an org
Each org gets its own subdomain name that you choose when it is created, for example “yourcompany”. That name sits in front of an Okta domain. Production orgs usually use the main Okta domain. Preview, or test, orgs usually use a separate preview domain. Some regions and sectors use their own domains too, such as an EU domain or a government domain. The administrator uses a separate admin address that adds a suffix to the org name, so people and admins land on different pages.
Many companies also set up a custom domain, such as a sign-in address under their own company name. Users then never see an Okta address. Custom domains also allow emails to come from your own address and help you feel more in control of branding.
| Org type | Typical use | Notes |
|---|---|---|
| Production | Real employees and customers | Highest care. Changes should be tested first. |
| Preview or sandbox | Testing changes, trying new features | Separate data and settings from production. Not a live copy. |
| Developer or free tier | Learning and building integrations | Limited and not meant for real workloads. |
Identifiers
Inside an org, every object receives a unique identifier. The first letters of the identifier hint at the type of object. Users commonly start with 00u, groups with 00g and applications with 0oa. These identifiers are only meaningful inside the org that created them. A user id from one org means nothing in another.
When you move configuration from a test org to production, ids change. Always match objects by a stable name or label, not by their id.
5Architecture and Components
Here we zoom out to see how the org sits between people, apps and the places where user data originates.
flowchart LR
subgraph PEOPLE["People and devices"]
U1["Employees"]
U2["Contractors"]
U3["Customers"]
end
subgraph ORG["Okta org"]
AUTH["Authentication service"]
POL["Policy engine"]
UD["Universal Directory"]
AS["Authorization servers"]
PROV["Provisioning engine"]
LOG["System Log"]
ADM["Admin Console and API"]
end
subgraph SRC["Sources of truth"]
HR["HR system"]
AD["On premises directory"]
end
subgraph APPS["Applications"]
A1["Cloud apps via SAML or OIDC"]
A2["Apps via SCIM provisioning"]
A3["Custom APIs using tokens"]
end
U1 --> AUTH
U2 --> AUTH
U3 --> AUTH
AUTH --> POL
AUTH --> UD
POL --> AS
HR --> UD
AD --> UD
UD --> PROV
PROV --> A2
AUTH --> A1
AS --> A3
AUTH --> LOG
PROV --> LOG
ADM --> POL
ADM --> UD
Read the diagram left to right. People arrive at the authentication service. It looks the person up in the Universal Directory and asks the policy engine what rules apply. If sign-in succeeds, the org either sends the app a signed statement (for SAML or OIDC apps) or hands out tokens for APIs. Separately, the provisioning engine watches the directory and creates or removes accounts in connected apps. Every important step is written to the System Log. Admins change everything through the Admin Console or the API.
Agents and connectors
Some systems live inside a company’s own network and cannot be reached from the cloud directly. For these, Okta uses small programs called agents that run inside the network and make outbound connections to the org. Common agents connect to on-premises directories, to databases through provisioning connectors, and to older apps through a gateway. Because the connection is outbound, the company does not have to open inbound holes in its firewall.
An agent is like a trusted courier who works inside a private office building. The courier walks out to the central post office (the org) with questions and walks back with answers. The post office never has to knock on the building’s locked front door.
6Internal Working: What Happens When Someone Signs In
The most common thing an org does is sign people in to apps. Let us follow that story slowly.
sequenceDiagram participant User as User in browser participant App as Application participant Org as Okta org participant Dir as Universal Directory User->>App: Open the application App-->>User: Redirect to Okta org sign in User->>Org: Request sign in page Org->>Org: Check for existing session Org-->>User: Ask for credentials User->>Org: Send password Org->>Dir: Look up user and verify Dir-->>Org: User found Org->>Org: Evaluate policies and MFA need Org-->>User: Ask for second factor User->>Org: Approve with authenticator Org-->>User: Redirect back with signed assertion or code User->>App: Present assertion or code App-->>User: Access granted
The journey in plain steps
The app sends you away
The app does not know who you are, so it redirects your browser to your org’s sign-in address, carrying a small request that names the app.
The org checks for a session
If you signed in a short while ago, the org already has a session cookie in your browser, and you may skip straight to the end.
You prove who you are
You type a password, use a passkey, or approve a push on your phone. The directory confirms the details are correct.
Policies decide the strength
The org looks at the app, your group, your location, your device and your behavior. Then it decides whether one factor is enough or whether more proof is needed.
The org signs a statement
On success, the org creates a digitally signed message that says who you are. The app trusts it because it can check the signature against a key it already knows.
The app lets you in
The browser delivers the message to the app, the app validates it, and you are inside without the app ever seeing your password.
The app never handles your password. That means a breach in a small app cannot leak your main credentials, and ending your access in the org ends it everywhere at once.
7Data Flow and the User Lifecycle
People join, change roles and leave. A healthy org mirrors that story automatically, so access always matches reality.
Where user data comes from
In most companies the real truth about a person lives in a human resources system or an on-premises directory. The org imports or receives those records and stores them in the Universal Directory. A profile mapping says how fields travel, for example that the HR field “department” becomes the Okta field “department”. These mappings can run both ways, so the org can also write values back to other systems.
The life of a user account
Every user in an org has a status. Understanding the statuses explains most support questions.
flowchart LR S["Staged"] --> P["Provisioned"] P --> A["Active"] S --> A A --> L["Locked out"] L --> A A --> R["Password reset"] R --> A A --> X["Suspended"] X --> A A --> D["Deprovisioned"] X --> D D --> Z["Deleted"]
A staged user is created but has not been activated, which is useful for people who start next month. Provisioned means an activation message is waiting for the user. Active is the normal working state. Locked out happens after too many failed attempts. Suspended temporarily blocks sign-in without removing the account, for example during an investigation or leave. Deprovisioned ends access, and the user can then be deleted.
Think of a library card. A staged card has been printed but not handed over. An active card works at the desk. A locked card is held at the desk after wrong pin attempts. A suspended card is paused. A deprovisioned card is cut in half. The library, which is your org, keeps one record, and every branch follows it.
Provisioning to apps
When a user becomes active and belongs to a group assigned to an app, the org can automatically create an account in that app using SCIM or an app-specific connector. When the user changes department, attributes update. When the user leaves, the account is disabled or removed. This is often called the joiner, mover, leaver flow, and automating it is one of the biggest security wins an org gives you.
8Authorization Servers and Tokens
Signing people in is only half of the story. The other half is letting apps and APIs ask “what may this caller do?” That is the work of authorization servers.
What a token is
A token is a small, signed piece of data that proves something. An ID token says who the user is. An access token says what an app may do on the user’s behalf. A refresh token lets an app get a new access token without asking the user to sign in again. Because tokens are signed, an API can check them without calling the org every time.
Two kinds of authorization servers
| Type | Purpose | Good to know |
|---|---|---|
| Org authorization server | Signs users in to Okta itself and issues tokens for Okta’s own APIs | Built in. Limited customization. |
| Custom authorization server | Protects your own APIs with your own scopes, claims and policies | Needs the API access management feature. A default one is often provided to start with. |
On a custom server you define scopes, which are named permissions like “read invoices”, and claims, which are extra facts placed inside the token, such as the user’s department. You then write access policies and rules that say which apps may request which scopes, and how long tokens live.
A custom authorization server is a ticket office at a theme park. You show your identity once. The office prints a wristband that lists exactly which rides you may use and until what time. Ride operators never ask for your identity again. They only check the wristband and its stamp.
An access token is like cash. Whoever holds it can use it. Short lifetimes limit the damage if one is stolen, and refresh tokens should be rotated and well protected.
9Policies: The Rules That Guard Every Door
Policies decide how hard it is to get in. Good policy design is the difference between a safe org and an annoying one.
Global session policy
Controls how someone signs in to Okta itself, how long the session lasts and whether the org asks for another factor.
Authentication policy
Sets the sign-in requirement for each application, such as stronger proof for payroll than for a lunch menu.
Authenticator enrollment
Decides which ways of proving identity users can or must set up, such as an authenticator app or a security key.
Password policy
Sets length, complexity, expiry and recovery options. Modern guidance favors length and breached-password checks over frequent forced changes.
Network zones
Named groups of addresses, marked trusted or blocked, that rules can use to treat office traffic differently from unknown networks.
Behavior and device checks
Rules can react to unusual travel or new devices, and can require devices to meet health standards before access.
How rules are picked
A policy contains one or more rules, each with a priority number. The org reads rules in order and uses the first one whose conditions match. A final catch-all rule handles everyone else. This means the order of rules matters a great deal, and a broad rule placed too high can hide a more careful rule beneath it.
Picture a security guard with a printed checklist. He reads from the top: “Visitors to the data room need a badge and an escort. Employees need a badge. Everyone else, ask a manager.” He stops at the first line that fits the person. If someone wrote “everyone may enter” at the top, the rest of the list would never be read.
Strong sign-in does not mean more prompts. It means better proof. Hardware security keys, passkeys and device-bound authenticators are far harder to steal than passwords or one-time codes.
10Administrators and Delegated Control
Whoever can change an org can change who gets in. Careful sharing of that power is one of the most important design decisions.
Standard roles
| Role idea | Can do | Typical holder |
|---|---|---|
| Super administrator | Everything, including changing other admins | Very few trusted people |
| Organization administrator | Most configuration except top-level admin control | Identity team |
| Application administrator | Manage chosen apps | App owners |
| Group administrator | Manage members of chosen groups | Team leads |
| Help desk administrator | Reset passwords and unlock users | Support staff |
| Read-only administrator | View settings and logs | Auditors |
Custom roles and resource sets
The standard roles are broad. When a team needs only a slice of power, a custom role bundles exactly the permissions needed, and a resource set limits those permissions to specific groups, apps or other objects. This supports least privilege, the rule that every person should hold the smallest amount of power needed for their job.
In a hotel, the manager has a master key, housekeeping has keys for floors three to five, and the night guard has keys for the lobby and the garage. Nobody carries a key they do not need. A custom role with a resource set is the same idea for an org.
Keep two emergency super admin accounts with very long passwords and strong hardware factors, stored securely and monitored closely. They exist for the day your normal sign-in path is broken, and any use of them should trigger an alert.
11Environments and Multi-Org Strategy
Should a company have one org or many? The answer shapes safety, cost and complexity for years.
Separate test and production
Because a change in production affects every user at once, teams keep at least one preview org for testing. The preview org has its own users, apps and settings. It is not an automatic copy of production, so teams must bring configuration across on purpose. Many do this with infrastructure-as-code tools such as the Okta provider for Terraform, with scripts that use the management API, or with careful manual checklists.
flowchart LR DEV["Developer org for experiments"] --> PRE["Preview org for testing"] PRE --> PROD["Production org for real users"] GIT["Configuration in version control"] --> PRE GIT --> PROD PROD -.->|"Lessons and incidents"| GIT
In this picture, the configuration lives in version control. Changes are first applied to the preview org, tested, reviewed by a second person and then applied to production. Problems found in production flow back into the repository so the same mistake is not repeated.
One org or many orgs?
Reasons for a single org
- One directory, one set of policies, one place to look
- Simple single sign-on across all apps
- Lower cost and lower admin effort
- Clear audit story
Reasons for several orgs
- Strict legal or data separation between business units
- Acquired companies that keep their own identity stack for a while
- Different security models for staff and for customers
- Limiting damage if one org is compromised
When several orgs are needed, a feature often called Org2Org lets one org act as a hub that signs users in to apps and to other orgs, so people still get a single place to start. This adds convenience but also adds moving parts, so use it only when the separation is truly required.
One org is a single office building with one reception desk. Many orgs are a campus of separate buildings. A campus gives each building its own rules, but it needs shuttle buses between them, and every new building adds another front desk to staff.
12Security of the Org Itself
An identity org is a high-value target. If an attacker controls it, they control access to everything behind it. These measures protect the heart of the system.
| Threat | Example | Defence |
|---|---|---|
| Stolen admin credentials | Phished super admin password | Phishing-resistant factors for all admins, few super admins, separate admin sessions |
| Password guessing at scale | Bots trying leaked passwords | Threat detection features, rate limits, blocked networks, breached-password checks |
| Push fatigue | Attacker spams approval prompts until a user taps accept | Number-matching prompts, phishing-resistant authenticators, alerts on repeated denials |
| Leaked API token | Static token committed to code | Prefer OAuth for management access with narrow scopes, rotate and vault secrets |
| Session theft | Cookie stolen from a device | Short sessions, device checks, binding sessions to context |
| Overpowered integrations | App given more scopes than needed | Review scopes regularly, least privilege |
| Phishing look-alikes | Fake sign-in pages | Custom domain, passkeys tied to the real address |
Habits that help
- Protect admins most. Require the strongest factors for administrators and review admin lists often.
- Prefer scoped access over static keys. Static API tokens act like the user who made them and can be hard to track. OAuth-based access with named scopes is easier to limit and audit.
- Restrict where admins sign in from. Network zones can limit admin access to known networks.
- Control embedding. Trusted origins and redirect addresses should list only the sites that really need them.
- Review the log. Many incidents leave early hints that nobody read.
Protecting an org is like protecting the master key cabinet of a hotel. The cabinet is locked, only a few people hold its key, every opening is written in a book, and cameras watch it. Guests’ room doors may be ordinary, but this cabinet is treated with extra seriousness.
13Monitoring, Logging and Metrics
You cannot protect what you cannot see. The org writes a detailed diary of everything that happens, and it is your best friend during an incident.
The System Log
The System Log records events such as sign-ins, failed attempts, password resets, policy changes, app assignments and admin actions. Each event says who did what, to which object, from where and with what result. It can be searched in the Admin Console and read through an API. Okta typically keeps it for around ninety days, which is shorter than many audit rules require, so most companies export it.
Getting logs out
Log streaming
The org can push events to supported cloud destinations, such as AWS EventBridge or Splunk Cloud, as they happen.
Log API
A collector program can poll the logs API on a schedule and send events to your security tools.
Event hooks
The org can call your web address when chosen events occur, so you can react quickly.
Workflows
No-code flows can respond to events, for example by opening a ticket when an admin role changes.
What to watch
| Signal | Why it matters |
|---|---|
| Admin role assigned or removed | Sudden power changes are a classic attack step |
| Policy or rule changed | A weakened rule can open every door |
| Spike in failed sign-ins | Possible password spraying |
| Repeated denied push prompts | Possible push fatigue attack |
| New API token created | Tokens grant long-lived access |
| Break-glass account used | Should almost never happen |
| Sign-in from a new country | Possible stolen credentials |
| Rate-limit warnings | Integrations are too busy or looping |
The System Log is the flight recorder of an aircraft. Most days nobody opens it. On the day something goes wrong it explains exactly what happened, in order. Streaming it to a safe, separate place is like storing a copy of the recorder in a second building.
14Limits, Rate Limits and Scale
A shared service protects itself and its other customers with limits. Knowing them early prevents mysterious failures later.
Rate limits
Okta limits how many requests your org may send to each API endpoint in a given period. The limits apply per org and are grouped by type of endpoint, so heavy use of one endpoint does not necessarily block another. Each response includes headers that say what the limit is, how many calls remain and when the count resets. When you go over, the org answers with a “too many requests” error.
The limits depend on your plan and on the endpoint, and they change over time, so always read the current documentation instead of memorizing numbers.
Living politely within limits
Read the headers
Check the remaining count and slow down before you reach zero, instead of waiting for errors.
Back off on errors
When told to wait, wait, then retry with growing delays and a little randomness so many clients do not retry at the same instant.
Fetch less
Ask for only the fields and pages you need, use filters and search, and avoid reading the whole directory on every run.
Cache and react
Keep results for a short time and use events rather than constant polling to learn about changes.
Spread the load
Run large imports in quiet hours and avoid several scripts hitting the same endpoint at once.
All tools in your company that call the org share the same limits. A badly written script can slow the sign-in experience of other integrations, so give each integration its own identity and watch its usage.
Limits are like a water pipe in a building. Every tap draws from the same supply. If one tap is left running at full force, the shower upstairs turns cold. Good tenants take what they need and no more.
15Advantages, Disadvantages and Trade-offs
No design is perfect. An honest look at the strengths and costs of the org model helps you decide where to lean.
Advantages
- One place to manage access for many apps
- Faster onboarding and cleaner offboarding
- Strong sign-in options available to all apps at once
- Central audit trail
- No servers for you to patch or scale
- Large catalog of ready-made app integrations
Disadvantages
- The org becomes a critical dependency for sign-in
- Misconfiguration can lock out many people at once
- Rate limits and plan features constrain some designs
- Moving configuration between orgs takes deliberate effort
- Costs grow with users, features and extra orgs
- Deep customization may need hooks or custom code
| Trade-off | Leaning one way | Leaning the other way |
|---|---|---|
| Security versus convenience | More prompts and stricter devices, fewer breaches | Fewer prompts, higher risk |
| Single org versus many orgs | Simplicity and a clear view | Separation and smaller blast radius |
| Hosted sign-in versus embedded sign-in | Less work and faster security updates | Full control of look and flow, more work to maintain |
| Built-in features versus custom hooks | Easier upgrades | Exact fit to special needs |
| Short sessions versus long sessions | Safer after theft | Less friction for users |
Having one reception desk for a whole building makes visitors easy to track, but if the desk closes, nobody can enter. Adding more desks makes the building more robust, yet also more costly and harder to keep consistent. The best answer depends on what your building holds.
16Design Patterns and Anti-patterns
Teams that run orgs for years end up repeating a few good arrangements and avoiding a few painful ones.
Patterns that work
Group-based access
Assign apps to groups, never to individual people. Add or remove someone from a group and their access follows.
Source of truth first
Let HR or the main directory drive user data and lifecycle, so the org never becomes a second, conflicting list.
Configuration as code
Keep settings in version control, review changes and apply them the same way every time.
Tiered sign-in
Ask for stronger proof for sensitive apps and lighter proof for low-risk ones.
Delegated admin
Give each team control over only its own apps and groups through custom roles.
Log everything outward
Stream logs to your security tools and alert on admin, policy and token changes.
Anti-patterns to avoid
What it looks like
Giving many people the super administrator role “just in case”.
Why it hurts
Every extra super admin is another account an attacker can target, and mistakes by any of them can affect the whole company.
Better approach
Keep super admins to a tiny number, and use custom roles with resource sets for everyone else.
What it looks like
Editing production policies directly with no test and no review.
Why it hurts
One wrong rule can lock out thousands of users or open access that should be closed, and nobody can easily say who changed what and why.
Better approach
Test in a preview org, review changes with a second person and keep a rollback plan.
What it looks like
Using one long-lived API token, owned by a single person, for every script.
Why it hurts
The token carries that person’s power, is hard to rotate, and stops working when the person leaves or changes role.
Better approach
Give each integration its own service identity, use narrowly scoped OAuth access and store secrets in a vault.
What it looks like
Assigning apps one user at a time and managing exceptions by hand.
Why it hurts
Nobody can tell why a person has access. Leavers keep stray permissions and audits become a nightmare.
Better approach
Use groups and rules that follow job roles, and review group membership on a schedule.
17Best Practices and Common Mistakes
If you remember only a short checklist, make it this one.
Best practices
- Plan the org structure first. Decide how many orgs you need and why before creating apps and policies.
- Use a custom domain so users see your own name and phishing pages are easier to spot.
- Automate joiners, movers and leavers from the HR source, and test the leaver path regularly.
- Make strong, phishing-resistant sign-in the default for admins and for sensitive apps.
- Name things clearly. Use consistent names for groups, apps and policies so anyone can understand them.
- Document every policy with who owns it and why it exists.
- Back up knowledge, not just data. Keep exported configuration and runbooks outside the org.
- Review access quarterly. Check admins, API tokens, app assignments and unused apps.
- Prepare for outages. Know how a critical app signs in if the org is unreachable, and keep break-glass access ready.
Common mistakes beginners make
Do this
- Test changes in a preview org first
- Assign apps to groups
- Stream logs and alert on admin changes
- Match objects by name, not by id, across orgs
- Keep the number of super admins very small
Not this
- Assuming the preview org mirrors production
- Putting a catch-all “allow” rule at the top of a policy
- Relying on the default log retention for audits
- Sharing one admin login between several people
- Ignoring rate-limit warnings from scripts
18Real-World Scenarios
The ideas above become clearer when you see them in everyday company situations.
A growing software company
A startup begins with a handful of cloud apps and a single production org. As it grows past a few hundred people, it connects its HR system as the source of truth, assigns apps by group, and adds a preview org to test changes. Onboarding time drops from days to minutes, and leavers lose access within the hour.
A company that buys another company
After an acquisition, the new business keeps its own org for a year while the two teams plan. The main org acts as a hub so staff of both firms can open shared apps from one place. Later, the teams merge users into one org when the legal and technical plans are ready.
A regulated business with strict audits
A financial firm streams every log to a long-term store, uses hardware security keys for all admins, writes policies in version control and reviews admin rights every quarter. Auditors can see who changed what and when, without asking engineers to dig through screens.
A team building APIs
A platform team protects its internal APIs with a custom authorization server. It defines scopes such as “read orders” and “write orders”, gives each service its own client, and keeps token lifetimes short. Services check tokens locally, so there is no extra call to the org for every request.
A sensible rollout path
Design
Decide the number of orgs, the sources of truth, naming rules and admin model.
Foundation
Create the preview and production orgs, set the custom domain, secure admin accounts and turn on log export.
Connect sources
Bring in users from HR or the directory and check the profile mappings.
Onboard apps in waves
Start with low-risk apps, then move to critical ones with stronger policies.
Operate and improve
Review logs, tune policies, retire unused apps and rehearse recovery.
19Sign-In Methods and Authenticators in Depth
An org can ask people to prove who they are in many different ways. Choosing the right mix decides how safe and how pleasant sign-in will feel.
The three kinds of proof
Security people group proof into three families. Something you know, like a password. Something you have, like a phone or a hardware key. Something you are, like a fingerprint or a face scan on your device. Multi-factor authentication, often shortened to MFA, means asking for proof from at least two different families. Two passwords are not MFA, because both are things you know.
The common authenticators
| Authenticator | How it works | Strength |
|---|---|---|
| Password | A secret the user remembers | Weak alone. Easy to phish, guess or reuse. |
| Email or SMS code | A one-time number sent to the user | Better than nothing, but messages can be intercepted or redirected. |
| Authenticator app code | A time-based number made on the phone | Good, though a fake sign-in page can still trick a user into typing it. |
| Push with number matching | The phone asks the user to confirm and to type a number shown on screen | Strong against prompt spamming. |
| Okta Verify with device-bound sign-in | The phone or laptop proves it holds a secret key, often unlocked by a fingerprint or face | Very strong. Resistant to phishing. |
| Security key or passkey | A hardware key or device credential that works only for the real website | Strongest. Phishing-resistant by design. |
A password is a secret handshake that anyone who watches you can copy. A text message code is a note slipped under your door, which a thief might also pick up. A security key is a door lock that only opens for one particular, uncopyable brass key, and that key refuses to work in a fake door built by a trickster.
Why phishing resistance matters so much
Most attackers do not break the maths. They trick people. They build a copy of the sign-in page and wait for a user to type the password and the one-time code. A phishing-resistant authenticator checks the real web address as part of the proof, so on a copy-cat page it simply does not work. Moving administrators and sensitive apps to such authenticators removes the most common path of attack.
Recovery: the forgotten back door
Every strong sign-in method needs a way back in when a user loses a phone or a key. If recovery is weak, attackers simply use recovery instead of the strong method. Good practice is to let users enroll more than one authenticator, require strong proof for resetting factors, involve a verified identity check for help-desk resets, and log every recovery event for review.
A sign-in is only as strong as its easiest allowed path. If strong keys are available but text messages are still accepted as an alternative, attackers will aim for the text message path.
Assurance levels
A helpful way to think is in levels of assurance. Low-risk apps may accept a password plus one extra factor. Medium-risk apps may need a device that the company manages. High-risk apps and admin tools may need a phishing-resistant authenticator on a healthy device, with a recent sign-in. Authentication policies per app let you express these levels in plain rules instead of one setting for everything.
20Connecting Applications to the Org
An org is only useful once apps trust it. Here is how that connection is chosen and built.
The integration network
Okta keeps a large catalog of ready-made app integrations, called the Okta Integration Network. For thousands of popular apps, an administrator picks the app, fills in a few settings and assigns users or groups. The catalog entry already knows which protocol the app speaks and which attributes it needs. For anything not in the catalog, an administrator can create a custom integration using SAML, OIDC or another method.
flowchart TD
Q["New application to connect"] --> A{"Does it support OIDC or SAML?"}
A -->|"Yes"| B{"Is it a modern web or mobile app?"}
A -->|"No"| C["Use password vaulting or a gateway"]
B -->|"Yes"| D["Choose OIDC"]
B -->|"No, business app"| E["Choose SAML"]
D --> F{"Does it support SCIM?"}
E --> F
C --> F
F -->|"Yes"| G["Enable automatic provisioning"]
F -->|"No"| H["Manage accounts by import or by hand"]
G --> I["Assign groups and set an app sign in policy"]
H --> I
The diagram starts with one question: does the app understand a modern sign-in language? If yes, choose OIDC for newer web and mobile apps and SAML for classic business apps. If the app is old and understands neither, the org can store the user’s password securely and fill it in on the sign-in page, a method often called secure web authentication, or it can place a gateway in front of the app. Next, ask whether the app supports SCIM. If so, turn on automatic provisioning. Finally, assign groups and choose the sign-in policy.
Mapping attributes
Apps often need facts about the user, such as email, department or a role name. The org sends these as attributes or claims. You decide which attributes each app receives, and you can build new ones from expressions. Sending only what the app truly needs is a privacy habit and a security habit, because less data in a message means less data to leak.
Connecting an app is like adding a new shop to a shopping mall that uses a single membership card. The mall office must agree with the shop on how the card is checked, which facts the shop may see, and whether the shop’s own customer list is updated automatically when the mall adds or removes a member.
Trust and certificates
For SAML, the org signs each message with a private key. The app holds the matching public certificate and uses it to check the signature. Certificates expire, so someone must own their renewal. A forgotten expiry date is a classic cause of sudden sign-in failure for one app. Put certificate dates in a shared calendar and review them each quarter.
Record a named business owner and a technical owner for each integration. When something breaks, or when a review asks whether an app is still needed, you will know whom to call.
21Directories, HR Systems and Profile Mappings
The org is rarely the first place where user records exist. It must get along with the systems that came before it.
Common sources of users
Active Directory and LDAP
Many firms already have a directory in their own network. An agent installed inside that network reads users and groups and passes them to the org, and can check passwords or sync them.
HR-driven identity
The HR system is the source of truth about who works for the company. When HR records a new hire, a transfer or a leaver, the org follows automatically.
Partner and customer identities
Users from another company or from a social sign-in can be allowed through trust relationships, with tighter access than staff.
Created in the org
Useful for small teams and special accounts, but easy to forget, so it needs clear rules and regular review.
Who owns each attribute?
A frequent source of bugs is two systems that both believe they own the same field. For each attribute, decide on exactly one owner. If HR owns “department”, then nobody should edit it by hand in the org, or the next sync will overwrite the change and confuse everyone. Profile mappings make these ownership rules visible, by showing which direction each field flows and when.
Imagine a school where the office keeps each child’s official address. If a teacher scribbles a different address on a class list, the next office update wipes it out. Everyone is happier when it is clear that only the office changes addresses, and everyone else reads from the office.
Matching and duplicates
When users come from several sources, the org needs a rule to decide whether two records are the same person. It may match on email or on an employee number. Weak matching rules cause duplicates, or worse, merge two different people into one account. Pick a stable, unique value that never changes, and avoid using names, which can repeat or change.
Passwords and the move to passwordless
Some firms start by letting the org check passwords against their old directory, then slowly move users to modern authenticators so that passwords matter less. The aim is to reach a state where most sign-ins use device-bound proof and the password is only a backup or is removed altogether.
22Automation, Hooks and Extending the Org
Sometimes the built-in settings do not fit the exact business rule. Orgs offer several ways to add your own logic without breaking the service.
Four ways to extend
| Tool | When it runs | Best for |
|---|---|---|
| Event hooks | After something has happened | Notifying other systems, such as a message when a user is deactivated |
| Inline hooks | In the middle of a process, waiting for your answer | Adding a custom claim to a token, or applying a special rule during registration |
| Workflows | On events or on a schedule | No-code automation, such as access reviews or ticket creation |
| Management API | Whenever your own code calls it | Bulk tasks, reports and configuration as code |
Inline versus event
The difference between inline and event hooks is timing. An event hook is like a doorbell camera that sends you a notification after the visitor has already rung. An inline hook is like a doorman who must phone you before letting a visitor in, so the visitor waits for your answer. Because inline hooks sit in the path of a user action, they must answer fast and reliably. A slow or broken inline hook can make sign-in slow or fail.
Only place the smallest necessary decision in an inline hook, make it fast, secure the web address with a secret, and plan what should happen if your service is down.
Automation that pays for itself
- Access reviews. Regularly ask managers to confirm who still needs which app.
- Offboarding. When HR marks someone as leaving, suspend the account, revoke sessions, remove access and open tickets for devices.
- Admin alerts. When an admin role is granted, post to a security channel.
- Onboarding. When a new hire joins a team, add the right groups and send a welcome message.
Think of an org as a smart building. The built-in features are the lifts and doors that everyone expects. Hooks and workflows are the extra helpers you hire: a doorman who checks a special list, and an assistant who sends reminders and files paperwork when certain things happen.
Keep extensions healthy
Every custom piece is something your team must maintain. Document why it exists, who owns it, how to test it in the preview org and what to do if it fails. Remove extensions that are no longer used. The best org is one in which built-in features do most of the work, and custom code handles only the real exceptions.
23Resilience, Availability and Recovery Planning
Because so many apps depend on the org for sign-in, you should plan for the day something goes wrong, whether the cause is on the vendor side or your own.
Two kinds of trouble
Problems fall into two groups. The first is a service problem, where the shared cloud service is slow or unreachable in your region. You cannot fix it yourself, but you can prepare for it. The second is a configuration problem, where someone on your own team changes a rule or a certificate and many people are suddenly locked out. Surveys of identity incidents often find that configuration mistakes are more frequent than service failures, so most of your protection should aim at safe changes.
Preparing for service problems
- Subscribe to status updates so your team hears of an incident from the vendor before users complain.
- Know what keeps working. Users who already hold an app session may continue until it expires, while new sign-ins may fail. Learn which of your apps behave which way.
- Keep emergency access. Critical systems such as the cloud console and the network should have a break-glass path that does not depend on the org.
- Prepare a message. Have a template ready that tells staff what is happening, what still works and where to find updates.
Preparing for configuration problems
Change in small steps
Apply a new rule to a small test group first, and widen it only after checking the log for surprises.
Keep a rollback
Write down the previous setting or keep it in version control, so a bad change can be undone within minutes.
Protect an escape hatch
Exclude a small group of emergency admins from new strict rules until the rule is proven, so you can never lock yourself out.
Watch right after the change
Look at failed sign-ins and help desk calls for the next hour, because trouble usually shows up quickly.
Learn and record
After any incident, write a short note about the cause and the fix and update your checklist.
| Scenario | Effect | First response |
|---|---|---|
| Expired app certificate | One app rejects every sign-in | Renew the certificate and upload the new one to the app |
| Too-strict new policy | Many users blocked or prompted endlessly | Roll back the rule, then retest with a small group |
| Directory agent offline | New imports and password checks against the old directory fail | Restart or restore the agent server and check network access |
| Admin account compromised | Attacker may change settings | Suspend the account, revoke sessions and tokens, review recent admin changes in the log |
| Mass deactivation by a faulty sync | Users suddenly lose access | Pause the sync, restore status, fix the source data |
A building has fire exits that nobody uses on normal days. Yet the building still checks them regularly and runs drills, because the day they are needed there is no time to learn. Recovery planning for an org is the same: practise it while everything is calm.
Pretend the org is unreachable for an hour. Ask each team to describe how they would reach their critical systems. The gaps you find on paper are far cheaper than the gaps you find during a real incident.
24Frequently Asked Questions
Short answers to the questions people ask most about orgs.
25Summary and Key Takeaways
You began with a building full of apartments. You now know what lives inside one apartment and how to run it well.
Key Takeaways
- An Okta org is your private tenant. It is an isolated identity space inside a shared cloud service, with its own address, users, apps, policies and logs.
- Every org has the same building blocks. Universal Directory, applications, policies, authorization servers, admin roles, network zones and the System Log.
- Sign-in is a conversation. The app redirects to the org, the org checks proof and policies, and then sends back a signed statement or tokens, so apps never see passwords.
- Lifecycle automation is a major win. Joiners, movers and leavers should flow from a source of truth through provisioning to every app.
- Structure matters. Use a preview org for testing, manage configuration as code, and choose single or multiple orgs for clear reasons.
- Protect the org itself. Few super admins, phishing-resistant sign-in, scoped API access, strict network rules and break-glass accounts.
- Watch and respect limits. Stream logs, alert on admin and policy changes, and design integrations that handle rate limits calmly.