alibaba/spring-ai-alibaba · error · BizException

PermissionDenied

PermissionDenied

Error message

You do not have permission for this operation.

What it means

checkAdminPermission in AccountServiceImpl throws BizException(PERMISSION_DENIED) when the account exists but its type is not AccountType.ADMIN. Called before admin-only operations (create/update/delete/list accounts).

Solutions

  1. Perform the operation with an account that has ADMIN type
  2. Grant admin role via proper admin workflow
  3. Hide/omit admin-only actions in the UI for non-admin users
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at spring-ai-alibaba-admin/spring-ai-alibaba-admin-server-core/src/main/java/com/alibaba/cloud/ai/studio/core/base/service/impl/AccountServiceImpl.java:606 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of alibaba/spring-ai-alibaba@f82da0b50f (2026-09-09). Data as JSON: /api/errors/81986e54aaf10f2c. Report an issue: GitHub.

Appendix: source

Thrown at spring-ai-alibaba-admin/spring-ai-alibaba-admin-server-core/src/main/java/com/alibaba/cloud/ai/studio/core/base/service/impl/AccountServiceImpl.java:606

		}

		Account account = BeanCopierUtils.copy(entity, Account.class);
		account.setPassword(null);
		return account;
	}

	/**
	 * Verifies admin permissions
	 * @param accountId Account ID to check
	 */
	private void checkAdminPermission(String accountId) {
		AccountEntity entity = getAccountById(accountId);
		if (entity == null) {
			throw new BizException(ErrorCode.ACCOUNT_NOT_FOUND.toError());
		}

		if (AccountType.ADMIN != entity.getType()) {
			throw new BizException(ErrorCode.PERMISSION_DENIED.toError());
		}
	}

	/**
	 * create workspace for account
	 * @param accountId account id
	 * @return workspace id
	 */
	private String createWorkspace(String accountId) {
		Workspace workspace = new Workspace();
		workspace.setAccountId(accountId);
		workspace.setName("Default Workspace");
		workspace.setDescription("Default workspace");
		return workspaceService.createWorkspace(workspace);
	}

}

View on GitHub (pinned to f82da0b50f)