apolloconfig/apollo · error · AccessDeniedException
Portal user session is required
Error message
Portal user session is required
What it means
Thrown by requirePortalUserRequest when the request's auth type is not a portal user identity (USER or USER_TOKEN).
Source
Thrown at apollo-portal/src/main/java/com/ctrip/framework/apollo/openapi/v1/controller/UserController.java:139
@Override
public ResponseEntity<Void> changeUserEnabled(OpenUserDTO openUserDTO, String operator) {
boolean consumerRequest = requireUserManagementMutationPermission(operator);
if (!consumerRequest && !unifiedPermissionValidator.isSuperAdmin()) {
throw new AccessDeniedException("Change user enabled operation is forbidden");
}
UserPO user = OpenApiModelConverters.toUserPO(openUserDTO);
if (userService instanceof SpringSecurityUserService) {
((SpringSecurityUserService) userService).changeEnabled(user);
} else {
throw new UnsupportedOperationException("change user enabled is unsupported");
}
return ResponseEntity.ok().build();
}
private void requirePortalUserRequest() {
if (!isPortalUserIdentity()) {
throw new AccessDeniedException("Portal user session is required");
}
}
private void requireUserManagementReadPermission() {
if (UserIdentityConstants.USER.equals(UserIdentityContextHolder.getAuthType())) {
return;
}
if (UserIdentityConstants.USER_TOKEN.equals(UserIdentityContextHolder.getAuthType())
&& unifiedPermissionValidator.hasManageUsersPermission()) {
return;
}
if (UserIdentityConstants.CONSUMER.equals(UserIdentityContextHolder.getAuthType())
&& unifiedPermissionValidator.hasManageUsersPermission()) {
return;
}
throw new AccessDeniedException("Manage users permission is required");
}
View on GitHub (pinned to d95fc18d11)
Solutions
- Authenticate with a portal user session or a user token; consumer tokens are not accepted for this endpoint.
- Ensure the session cookie or user-token header is sent with the request.
When it happens
Trigger: Thrown when a user-management OpenAPI call that requires an interactive portal session is invoked without a logged-in portal user.
Common situations: Endpoint called with only a consumer token where a portal session is mandatory; session expired or cookie missing.
AI-assisted analysis of apolloconfig/apollo@d95fc18d11 (2026-08-14).
Data as JSON: /api/errors/ff535c8f037bf39d.
Report an issue: GitHub.