Skip to content

feat: [UIE-9798] - IAM: Enable account_viewer to access roles table#13200

Merged
aaleksee-akamai merged 7 commits intolinode:developfrom
aaleksee-akamai:UIE-9798
Dec 17, 2025
Merged

feat: [UIE-9798] - IAM: Enable account_viewer to access roles table#13200
aaleksee-akamai merged 7 commits intolinode:developfrom
aaleksee-akamai:UIE-9798

Conversation

@aaleksee-akamai
Copy link
Contributor

@aaleksee-akamai aaleksee-akamai commented Dec 15, 2025

Description 📝

This PR allows users with account_viewer role to see the roles table.

Changes 🔄

List any change(s) relevant to the reviewer.

  • Update the permission's check
  • Update tests

Scope 🚢

Upon production release, changes in this PR will be visible to:

  • All customers
  • Some customers (e.g. in Beta or Limited Availability)
  • No customers / Not applicable

Preview 📷

Before After
without account_viewer role: 📷
image image
with account_viewer role: 📷
image image

How to test 🧪

Prerequisites

(How to setup test environment)

  • use iam account (not-admin) with/without account_viewer role

Reproduction steps

(How to reproduce the issue, if applicable)

  • go to /iam/roles

Verification steps

(How to verify changes)

  • Roles table is visible if user has a view_account permission
  • Button Assign Role is enabled if user has a is_account_admin permission
  • Button Assign Role is disabled if user does not have a is_account_admin permission
Author Checklists

As an Author, to speed up the review process, I considered 🤔

👀 Doing a self review
❔ Our contribution guidelines
🤏 Splitting feature into small PRs
➕ Adding a changeset
🧪 Providing/improving test coverage
🔐 Removing all sensitive information from the code and PR description
🚩 Using a feature flag to protect the release
👣 Providing comprehensive reproduction steps
📑 Providing or updating our documentation
🕛 Scheduling a pair reviewing session
📱 Providing mobile support
♿ Providing accessibility support


  • I have read and considered all applicable items listed above.

As an Author, before moving this PR from Draft to Open, I confirmed ✅

  • All tests and CI checks are passing
  • TypeScript compilation succeeded without errors
  • Code passes all linting rules

@linode-gh-bot
Copy link
Collaborator

Cloud Manager UI test results

🎉 831 passing tests on test run #2 ↗︎

❌ Failing✅ Passing↪️ Skipped🕐 Duration
0 Failing831 Passing11 Skipped36m 2s

@aaleksee-akamai aaleksee-akamai marked this pull request as ready for review December 15, 2025 15:33
@aaleksee-akamai aaleksee-akamai requested a review from a team as a code owner December 15, 2025 15:33
}

if (!permissions?.is_account_admin) {
if (!permissions?.view_account) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we be defensive here and ALSO check for is_account_admin? In light of the recent changes I am wondering if we have to start doing multiple checks like that in case the permission isn't properly returned.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

makes sense, I've added !(permissions?.view_account || permissions?.is_account_admin)

@github-project-automation github-project-automation bot moved this from Review to Approved in Cloud Manager Dec 17, 2025
@aaleksee-akamai aaleksee-akamai merged commit f399c85 into linode:develop Dec 17, 2025
34 of 35 checks passed
@github-project-automation github-project-automation bot moved this from Approved to Merged in Cloud Manager Dec 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

4 participants