UPDATE: Granular scopes rollout has been paused, please see the Changelog announcement for more details
Hi, I am Julia Daehne, Ecosystem Product Manager at Atlassian. One of my main focus areas is app security which we know is a big requirement for our existing Cloud customers, and those who are still planning to move to Cloud.
What’s changing?
We will be rolling out the availability of new scopes for Forge and OAuth 2.0 (3LO) apps built for Jira platform, Jira Software, Jira Service Management, and Confluence Cloud over the next day. During this time, you will see details about these new scopes in Forge CLI and the developer console.
These new scopes help app developers limit what data their app requests from a customer’s Atlassian instance and provide customers with greater visibility into what data apps have access to. If you are a developer of OAuth 2.0 (3LO) or Forge apps, you should receive an email notification from Atlassian about this announcement in the coming weeks.
On January 26th, you may have noticed some of these elements started to appear, however we made the decision to roll back the release of new scopes after discovering several technical issues. This is not the experience that we want our developers to have, and we are committed to better communication and transparency with new feature releases. These issues have been addressed, and we can now share details about this release.
What action do I need to take, and by when?
Forge and OAuth 2.0 (3LO) apps must use the new scopes by August 23, 2022 , within the standard Atlassian 6-month deprecation timeframe. If you have not updated your scopes by August 23, 2022 , and your app is still using old scopes, it may not function as expected for new customers who attempt to install your app.
We understand that updating your app’s scopes impacts your workload as you weigh this request against other platform work. We believe this work will be worth the effort as data security continues to be top of mind for Atlassian customers.
Why are scopes changing, and how does this benefit me as a developer or partner?
The new scopes allow finer control over app access to data. This improvement brings Forge and OAuth 2.0 (3LO) apps better in line with data management and security best practices. Keeping data access permissions at the minimal level reduces the risk that app developers take on, and increases security for app customers.
How do I update my app scopes?
For Forge apps | For OAuth 2.0 (3LO) apps |
---|---|
1. Ensure your Forge CLI is version 2.1.0 or later. Please refer to this documentation to upgrade to the latest Forge CLI package.
2. Run forge lint --fix to add the new scopes to the manifest.
3. Remove the deprecated scopes from the manifest file. |
1. Review your app to determine all of the operations used.
2. Consult the relevant REST API reference documentation to determine the scopes needed for each operation and create a list of scopes. 3. Update the scopes in the developer console. |
You can save your progress and come back later to continue updating your scopes.
Use the following reference documentation to help you update your scopes:
How will updating my scopes impact my customers?
-
For Forge apps:
- Once you have completed the process of updating your app’s scopes and saved your changes, a new version of your app will need to be made available.
- Admin users must update to the latest version of the app.
- Once they do, each user of your app will see a reauthentication pop-up the next time they use your app that will display what actions your app takes and the information it needs to access (example shown below).
- The pop-up will link to an FAQ web page where customers can learn more.
-
For OAuth 2.0 (3LO) apps:
- Once you have completed the process of updating your app’s scopes and saved your changes, users of your app will see a reauthentication pop-up the next time they use your app that will display what actions your app takes and the information it needs to access (example shown below).
- The pop-up will link to an FAQ web page where customers can learn more.
How can I ask questions and provide feedback?
Please ask questions and provide feedback directly on this community post.
Thank you for taking the time to read this update, and for your help as we look to enhance app security.
FAQ
Q. What if I can’t update my scopes all in one go?
A. You will be able to save your progress and come back to continue updating your scopes at any time throughout the 6-month deprecation period window.
Q. Will this change how the customer is licensed for applications?
A. No, there will be no changes.
Q. Which apps are affected by this change?
A. This change will affect Forge and 3LO apps.
Q. What happens if I am not using version 2.1.0 or later of the Forge CLI?
A. If you have not upgraded to version 2.1.0 or later of the Forge CLI and your app is still using old scopes, forge lint
will throw a permission-scope-required
error. The error message will state that granular scopes (e.g. read:comment:jira
in the example below) are required. Please upgrade to version 2.1.0 or later of the Forge CLI package.
error Jira endpoint: GET /rest/api/3/issue/{issueIdOrkey}/comment requires "read:comment:jira" scope permission-scope-required
Q. I am seeing an error like the one below when I run forge deploy
. What do I do?
A. Please upgrade to version 2.1.0 or later of the Forge CLI package.
Error: Your version of Forge CLI is no longer supported.
Run npm install -g @forge/cli to update to version 2.1.0 or later of the Forge CLI package.
Q. I am seeing a warning like the one below when I run forge lint
. What do I do?
A. Please upgrade to version 2.1.0 or later of the Forge CLI package.
Warning: Your version of Forge CLI is out of date. We recommend you update to version 2.1.0 or later to get the latest features and bug fixes.
Run npm uninstall -g @forge/cli followed by npm install -g @forge/cli to update from an older version to the latest version.
Q. If I am transitioning my app from Connect to Forge during this 6-month timeframe, how will it affect me?
A. When you are transitioning from Connect to Forge you will transition to the new scopes so there is no additional migration step.
Q. If my customer does not reauthenticate my app when the pop-up appears, what will happen?
A. The app update will only become available once the user has approved the changes.
Q. Will Atlassian support old scopes and new scopes for a period of time?
A. Yes, old scopes are supported throughout the deprecation period.
Q. Do I need to do this once for all of my apps or once for each app?
A. Once per app.
Q. How else can my customers see what data my app is accessing?
A. At this point in time, this pop-up message to notify users will be the only way. However, in the future, updating your scopes will allow us to enable other ways for customers to gain transparency into the data your app has access to.