{"record":{"id":"ffecef092f5b6b98","repo":"apolloconfig/apollo","slug":"unsupported-auth-type-s-ffecef","errorCode":null,"errorMessage":"Unsupported auth type: %s","messagePattern":"Unsupported auth type: (.+?)","errorType":"exception","errorClass":"BadRequestException","httpStatus":400,"severity":"error","filePath":"apollo-portal/src/main/java/com/ctrip/framework/apollo/openapi/v1/controller/ReleaseController.java","lineNumber":275,"sourceCode":"        || UserIdentityConstants.USER_TOKEN.equals(authType)) {\n      UserInfo loginUser = userInfoHolder.getUser();\n      if (loginUser == null || StringUtils.isBlank(loginUser.getUserId())) {\n        throw new BadRequestException(\"Current user not found\");\n      }\n      return loginUser.getUserId();\n    }\n\n    if (UserIdentityConstants.CONSUMER.equals(authType)) {\n      String operator = StringUtils.isBlank(queryOperator) ? payloadOperator : queryOperator;\n      RequestPrecondition.checkArguments(!StringUtils.isContainEmpty(operator),\n          \"operator should not be null or empty\");\n      if (userService.findByUserId(operator) == null) {\n        throw BadRequestException.userNotExists(operator);\n      }\n      return operator;\n    }\n\n    throw new BadRequestException(\"Unsupported auth type: %s\", authType);\n  }\n\n  private boolean shouldHideConfigToPortalUser(String appId, String env, String clusterName,\n      String namespaceName) {\n    return UserIdentityConstants.USER.equals(UserIdentityContextHolder.getAuthType())\n        && unifiedPermissionValidator.shouldHideConfigToCurrentUser(appId, env, clusterName,\n            namespaceName);\n  }\n\n  private void checkReleaseNamespaceReadAllowed(String appId, String env, String clusterName,\n      String namespaceName) {\n    String authType = UserIdentityContextHolder.getAuthType();\n    if (UserIdentityConstants.USER_TOKEN.equals(authType) && unifiedPermissionValidator\n        .shouldHideConfigToCurrentUser(appId, env, clusterName, namespaceName)) {\n      throw new AccessDeniedException(\"Access is denied\");\n    }\n    if (UserIdentityConstants.CONSUMER.equals(authType) && !unifiedPermissionValidator\n        .hasReleaseNamespacePermission(appId, env, clusterName, namespaceName)) {","sourceCodeStart":257,"sourceCodeEnd":293,"githubUrl":"https://github.com/apolloconfig/apollo/blob/d95fc18d112589efc09ddcbe1507047584d55251/apollo-portal/src/main/java/com/ctrip/framework/apollo/openapi/v1/controller/ReleaseController.java#L257-L293","documentation":"Thrown by resolveOperator when the auth type in the identity context is neither USER, USER_TOKEN, nor CONSUMER, so no operator can be resolved for the release operation.","triggerScenarios":"Thrown when the resolved operator principal is of an auth type the release endpoint does not support (e.g. an unexpected Principal implementation).","commonSituations":"A custom auth SPI returns a principal type other than consumer/portal user; misconfigured authentication provider.","solutions":["Authenticate using one of the supported identity types: portal user session, user token, or consumer (OpenAPI) token.","Check that the Authorization or session headers are set so the auth filter populates a recognized auth type."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"d95fc18d112589efc09ddcbe1507047584d55251","analyzedAt":"2026-08-14T04:00:05.477Z","schemaVersion":2},"datasetVersion":"2026-08-14T05:17:29.042Z"}