GenAuth DocsDocuments
Concepts
User Guide
Development Integration
AgentAuth
Metadata
Development Integration
Multi-tenant (beta)
Console Documentation
Multi-tenant Console
Tenant Console
Saas Application Demo
Concepts
User Guide
Development Integration
AgentAuth
Metadata
Development Integration
Multi-tenant (beta)
Console Documentation
Multi-tenant Console
Tenant Console
Saas Application Demo
Old version
Development Integration
  • API

  • SDK

    • Java

      • Installation and use
      • User authentication module

        • Login

        • Logout

        • Manage Token

        • Register

        • User information

        • Account Binding

        • MFA Factor Management

        • User-related resources

        • Message service

        • Authentication

          • String type resource authentication
          • Array type resource authentication
          • Tree type resource authentication
          • Get the user's authorized resource list under the login application
          • Get the user's specified resource permission list under the login application
          • Get the structure list of authorized resources under the user login application
        • Others

        • OIDC module
        • OAuth module
        • SAML module
        • CAS module
        • Events
      • Management module

    • Node.js

    • Python

  • Error Codes
  1. Development Integration
  2. /
  3. SDK
  4. /
  5. Java
  6. /
  7. User authentication module

  8. /
  9. Authentication

  10. /
  11. Get the structure list of authorized resources under the user login application

¶ Get the list of resources authorized by the user under the logged-in application

Update time: 2025-07-23 07:34:21
Edit

Get the list of resources authorized by the user. The user obtains the structure list authorized by a resource under a certain application, and returns the authorization list of the corresponding resource through different resource types.

¶ Method Name

AuthenticationClient.getUserAuthResourceStruct

¶ Request Parameters

Type: GetUserAuthResourceStructDto

NameType
Is it required
default
Description
Example Value
resourcestringYes s-Data resources CodeexampleResourceCode

¶ Sample Code

package test.authentication;

import cn.authing.sdk.java.client.AuthenticationClient;
import cn.authing.sdk.java.dto.GetUserAuthResourcePermissionListDto;
import cn.authing.sdk.java.dto.GetUserAuthResourcePermissionListRespDto;
import cn.authing.sdk.java.dto.LoginTokenRespDto;
import cn.authing.sdk.java.dto.SignInOptionsDto;
import cn.authing.sdk.java.model.AuthenticationClientOptions;
import cn.authing.sdk.java.util.JsonUtils;
import java.util.ArrayList;
import java.util.List;

public class GetUserAuthResourceStructTest {
  // Need to be replaced with your GenAuth App ID
  private static final String APP_ID = "AUTHING_APP_ID";
  // Need to be replaced with your GenAuth App Secret
  private static final String APP_SECRET = "AUTHING_APP_SECRET";
  // Need to be replaced with your GenAuth App Host
  private static final String APP_HOST = "AUTHING_APP_HOST";
  // Need to be replaced with your GenAuth Access Token
  private static final String ACCESS_TOKEN = "AUTHING_ACCESS_TOKEN";

  public static void main(String[] args) throws Throwable {

    AuthenticationClientOptions clientOptions = new AuthenticationClientOptions();
    clientOptions.setAppId(APP_ID);
    clientOptions.setAppSecret(APP_SECRET);
    clientOptions.setAppHost(APP_HOST);

    AuthenticationClient clientSing = new AuthenticationClient(clientOptions);
    LoginTokenRespDto response = clientSing.signInByUsernamePassword(
        "username",
        "password",
        new SignInOptionsDto());
    clientOptions.setAccessToken(response.getData().getAccessToken());
    AuthenticationClient clientAuth = new AuthenticationClient(clientOptions);
    GetUserAuthResourceStructDto dto = new GetUserAuthResourceStructDto();
    dto.setResource("resourceCode");
    GetUserAuthResourceStructRespDto userAuthResourceStruct = clientAuth
        .getUserAuthResourceStruct(dto);
    System.out.println(JsonUtils.serialize(userAuthResourceStruct));
  }
}

¶ Request Response

Type: GetUserAuthResourceStructRespDto

NameTypeDescription
statusCodenumberBusiness status code, which can be used to determine whether the operation is successful. 200 means success.
messagestringDescription
apiCodenumberSegmented error code, which can be used to get the specific error type.
requestIdstringRequest ID. Returned when the request fails.
dataGetUserAuthResourceStructDataDtoResponse data

Example Results:

{
  "statusCode": 200,
  "message": "Operation successful",
  "apiCode": 0,
  "requestId": "934108e5-9fbf-4d24-8da1-c330328abd6c",
  "data": {
    "namespaceCode": "namespaceCode",
    "resourceCode": "resourceCode",
    "resourceType": "TREE",
    "treeResourceAuthAction": {
      "nodeAuthActionList": [
        {
          "code": "123",
          "name": "Tree Data Resources",
          "value": "Example Tree Resource Policy Node",
          "actions": "read",
          "children": [
            {
              "code": "code1",
              "name": "Child Nodes 1",
              "value": "Child Nodes Value",
              "actions": ["create"],
              "children": [
                {
                  "code": "code2",
                  "name": "Child Nodes 2",
                  "value": "Child Nodes 2 Value",
                  "actions": ["get"]
                }
              ]
            }
          ]
        }
      ]
    }
  }
}

¶ Data Structure

¶ GetUserAuthResourceStructDataDto

NameType
Is it required
Description
Example Value
namespaceCodestringYesPermission space CodenamespaceCode
resourceCodestringYesData resource CoderesourceCode
resourceTypestringYesData resource type, nested type, ResourceType. Currently supports three types: tree structure (TREE), string (STRING), array (ARRAY), and returns different structures according to different types.
- STRING: string type result StrResourceAuthAction.
- ARRAY: array type ArrResourceAuthAction.
- TREE: tree type TreeResourceAuthAction.
strResourceAuthActionStrResourceAuthActionNoString resource authorization structure, nested Type: StrResourceAuthAction.
arrResourceAuthActionArrResourceAuthActionNoArray resource authorization structure, nested Type: ArrResourceAuthAction.
treeResourceAuthActionTreeResourceAuthActionNoTree resource authorization structure, nested Type: TreeResourceAuthAction.

¶ ResourceType

NameTypeDescription
STRINGenumString type
ARRAYenumArray type
TREEenumTree type

¶ StrResourceAuthAction

NameType
Is it required
Description
Example Value
valuestringYesThe value of a string data resourceresourceValue
actionsarrayYesA list of permission operations for a string data resource["read","get"]

¶ ArrResourceAuthAction

NameType
Is it required
Description
Example Value
values ​​arrayisthe values ​​of array data resources["resourceValue1","resourceValue2"]
actionsarrayisthe permission operation list of array data resources["read","get"]

¶ TreeResourceAuthAction

NameType
Is it required
Description
Example Value
nodeAuthActionListarrayYesTree structure node list, nested Type: TreeStructs.-

¶ TreeStructs

NameType
Is it required
Description
Example Value
codestringyesTree resource node Code, unique at the same level123
namestringyesTree resource node Name, unique at the same levelData Resource
valuestringnoTree resource node ValueExample Resource Policy Node
actionsarrayyesPermission operation list of tree data resource policy noderead
childrenobjectnoSubnode data, subnode data has a maximum of five levels, nested Type: TreeStructs.[{"code":"code1","name":"Subnode 1","value":"Subnode value","enabled":false,"action":"create","children":[{"code":"code2","name":"Subnode 2","value":"Subnode 2 value","enabled":true,"action":"get"}]}]
Previous article: Get the user's specified resource permission list under the login application Next article: Get server public information
  • Method Name
  • Request Parameters
  • Sample Code
  • Request Response
  • Data Structure

User identity management

Integrated third-party login
Customized authentication process

Enterprise internal management

Single sign-on
Multi-factor authentication
Permission management

Developer

Development Documentation
GitHub (opens new window)

Company

official@genauth.ai
16th Floor, Building B, Beichen Century Center, Chaoyang District, Beijing (Total)
Room 406, 4th Floor, Block B, No. 200, Tianfu Fifth Street, High-tech Zone, Chengdu (Branch)

© Beijing Steamory Technology Co., Ltd.