The Atlassian Community Forums are currently in read-only mode. We will be relaunching on a new platform on September 22 (read more here). We apologize for the extended downtime. For concerns or questions, please email communitymanagers@atlassian.com. See you on the other side, on the new Atlassian Community Forums! :)

×

Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

Okta Can Provision Access. But Who Decides What Access Someone Should Have?

James Anderson
Contributor
August 12, 2026

Okta is really good at managing identities.

It can create users, manage groups, assign applications, and automate a lot of the repetitive work around user lifecycle management.

Jira Service Management is good at something different: requests, approvals, workflows, etc.,

So what happens when you put the two together?

The interesting part isn't just provisioning the access.

It's deciding what access the person should actually get, why they should get it, and what happens to that access later.

The provisioning part is usually the easy part

Imagine an employee joins the company.

Their manager requests access to:

  • Salesforce

  • GitHub

  • AWS

  • Jira

  • Confluence

The request goes through and person gets access.

That part can be automated quite nicely.

But six months later, a different question comes up:

Does this person still need all of that access?

That's where things get more complicated.

The "Mover" problem

Employee lifecycle is often described as:

Joiner → Mover → Leaver

Joiners usually get the most attention because onboarding is visible and time-sensitive even though manual process is hectic.

Leavers also get attention because removing access quickly is a security requirement though sometimes some random access given during the period is untraceable and not revoked later.

Movers are often the awkward middle child.

For example:

Sarah starts in Finance.

She gets:

  • Salesforce

  • Finance ERP

  • Finance-related Okta groups

Six months later, Sarah moves to Engineering.

She now needs:

  • GitHub

  • AWS

  • Engineering groups

It's easy to add the new access.

But what happens to the old access?

Does someone remember to remove the Finance groups?

Does anyone review whether she still needs Salesforce?

Was the change approved?

Can you prove when the old access was removed?

This is where simply connecting JSM and Okta isn't the whole governance story.

JSM can handle the decision. Okta can execute it.

A useful way to think about the relationship is:

Jira Service Management = request, approval and governance

Okta = identity and access execution

For example:

  1. An access request is submitted in JSM.

  2. The workflow determines what access is being requested.

  3. The appropriate person approves it.

  4. Through Okta the required user/group/application gets access.

  5. The action is recorded.

  6. Later, the access can be reviewed.

  7. If the access is no longer justified, it can be revoked.

The important part is that provisioning isn't treated as the end of the process.

It's one step in the lifecycle.

What about temporary access?

This becomes even more interesting with privileged or temporary access.

Suppose someone needs administrator access to an application for two days.

The request should answer:

  • Who requested it?

  • Why is it needed?

  • Who approved it?

  • What access was granted?

  • When should it expire?

  • Was it actually removed?

Without the expiry and revocation part, "temporary access" can quietly turn into permanent access.

Nobody intended that. It just wasn't revisited.

Periodic access reviews close the loop

This is probably the most overlooked part.

An access request tells you:

"Someone approved this access."

An access review asks:

"Does this access still make sense today?"

Those are two different questions.

A useful governance workflow can periodically ask application owners or managers to review existing access and either:

Keep it

or

Remove it

That creates a much stronger audit trail than simply having a historical provisioning record.

The bigger picture

I don't think the answer is replacing Okta with JSM, or replacing JSM with an identity platform.

They solve different problems.

The more interesting architecture is:

HR system → JSM → Governance decision → Okta → Application

The HR system tells you that something changed.

JSM provides the workflow and approval.

The governance layer determines what should happen.

Okta executes the identity and access changes.

And the audit trail connects everything together.

That's the part that turns "access was provisioned" into something more useful:

"Access was requested, approved, provisioned, reviewed and, when necessary, revoked."

For me, that's the difference between access automation and access governance.

3 answers

1 accepted

Comments for this post are closed

Community moderators have prevented the ability to post new answers.

1 vote
Answer accepted
Harrys
August 12, 2026

The mover part is a really good point. Adding new access is usually straightforward, but making sure the old access is actually removed is where things can get messy. The access review piece really closes that gap.

1 vote
Aditya_miniOrange
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Champions.
August 27, 2026

This is exactly where we see the gap between access automation and true access governance.

Okta is excellent at managing identities and executing access changes, while Jira Service Management provides strong workflow capabilities around requests and approvals. However, organizations often need an additional governance layer to answer questions like:

Why was this access granted?
Was it approved by the right person?
Is this access still required?
When should it expire?
Can we prove the entire lifecycle during an audit?

This creates an auditing gap.

This is where miniOrange Access Governance for Jira Service Management helps.

Instead of treating access requests as one-time tickets, miniOrange turns JSM into a centralized access governance platform where organizations can manage the complete access lifecycle.

For example:

Joiner

Employee joins through HR-driven workflows.
Access requests are automatically created based on role, department, or business requirements.
Approvals are routed to the appropriate managers/application owners.
Once approved, access is provisioned through connected systems such as Okta, Entra ID, Google Workspace, AWS, Jira, Confluence, GitHub, and other SaaS applications.

Mover
This is where governance becomes critical.

When an employee changes departments, miniOrange can help organizations review existing access instead of only adding new permissions.

For example:

Engineering access is requested.
Previous Finance access is reviewed.
Existing permissions can be approved, modified, or revoked.
Every decision is captured with a complete audit trail.

Leaver

Offboarding workflows can trigger access removal across connected applications.
Application access, group memberships, and user accounts can be deprovisioned based on defined workflows and policies.
Organizations get evidence of when and how access was removed.

Beyond lifecycle automation, miniOrange also supports:

Temporary and Elevated Access

Users can request elevated permissions for a defined period.
Requests follow approval workflows.
Access automatically expires and is revoked after the approved duration.

Periodic Access Reviews
Provisioning answers:

"Who approved this access?"

Access reviews answer:

"Should this user still have this access?"

miniOrange helps application owners and managers periodically review existing permissions, certify required access, and remove unnecessary privileges.

The architecture that can solve this is:

HR System → Jira Service Management → miniOrange Access Governance → Identity Provider → Applications

Where:

HR provides the lifecycle trigger.
JSM manages workflows and approvals.
miniOrange provides governance, policies, reviews, and auditability.
Identity platforms like Okta execute the access changes.

The goal is not to replace Okta or JSM. It is to bring governance around the access lifecycle so organizations can move from:

"Access was provisioned."

to:

"Access was requested, approved, provisioned, reviewed, monitored, and revoked when no longer required."

That is the difference between automating access and governing access.

0 votes
SPHIOR
Contributor
September 5, 2026

The Mover case is the right one to build the argument on — Joiners and Leavers are events, and Movers are a state change that nobody gets a notification about.

One thing your architecture handles implicitly but is worth making explicit, because it's the part that tends to be missing when someone finally asks: HR system → JSM → governance decision → Okta → application describes the flow, but not the record.

Six months after Sarah moves to Engineering, the question an auditor asks is rarely "does Sarah have the right access now". It's "when Sarah moved, who decided she should keep the Finance role, and on what date". The provisioning chain doesn't retain that by itself — Okta shows the current grant and, for a while, when it changed. The reasoning lived in the JSM ticket, and whether that ticket still exists, still has the approval visible, and hasn't been edited since is a separate question from whether the automation worked.

So the governance layer needs two outputs, not one: the decision, which drives Okta, and the record of the decision, which nobody reads until they urgently need it. Systems that only produce the first are the ones that feel fine for two years and then can't answer a question.

Disclosure: I build a Jira app in the change-evidence end of this. Nothing to pitch here — the split between the decision and the record of the decision is just the distinction I'd want nailed down before choosing tooling.

 

DEPLOYMENT TYPE
CLOUD
PRODUCT PLAN
FREE
PERMISSIONS LEVEL
Product Admin Site Admin
TAGS
AUG Leaders

Atlassian Community Events