- Service Overview
- Billing
- Getting Started
-
User Guide
- Before You Start
- Buying an Instance
- Instance Management
-
Enterprise Administrator Guide
- Logging In to the OneAccess Administrator Portal
- User Management
-
Resources
- Overview
-
Applications
- Adding an Application
- Enabling, Disabling, or Deleting an Application
- General Information
- Authentication Integration
- Synchronization Integration
- Login Configuration
- Access Control
- Object Models
- Authorization Management
- API Permission Management
- Application Permission Management
- Security Settings
- Audit Logs
- APIs
- Authentication
- Security
- Audit
- Settings
- Common User Guide
- Key Operations Recorded by CTS
-
Best Practices
- OneAccess Best Practices
- Identity Source Integration
-
Application Integration
-
Logging In to the Huawei Cloud Through User Portal
- Introduction
- Logging In to Single Huawei Cloud Account via OneAccess Without Password (SAML - Virtual User SSO)
- Logging In to Multiple Huawei Cloud Accounts via OneAccess Without Password (SAML - Virtual User SSO)
- Logging In to Single Huawei Cloud Account via OneAccess Without Password (SAML - IAM User SSO)
- Logging In to Multiple Huawei Cloud Accounts via OneAccess Without Password (SAML - IAM User SSO)
- Logging In to Huawei Cloud via OneAccess Without Password (OIDC)
- SSO Access to Applications Through SAML
- SSO Access to Applications Through OAuth 2.0
- SSO Access to Applications Through OIDC
- SSO Access to Applications Through CAS
- SSO Access to Applications Through Plug-in Autocompletion
-
Logging In to the Huawei Cloud Through User Portal
- Data Synchronization
- Authentication Provider Integration
- Authorizing IAM Users to Access a OneAccess Instance Administrator Portal
- API Usage
- Configuring MFA for User Login
- Developer Guide
-
API Reference
- Before You Start
- API Overview
-
OneAccess APIs
-
Management APIs
- Calling APIs
- Access Credentials
-
User Management
- Creating a User
- Modifying a User
- Deleting a User
- Enabling a User
- Disabling a User
- Changing a User Password
- Verifying and Modifying the Original User Password
- Querying User Details by User ID
- Querying User Details by Username
- Querying the User List
- Authorizing an Application Account
- Querying All Authorized Application Accounts of a User
- Organization Management
- Application Organization Management
- Application Account Management
- Application Role Management
- User APIs
- Application Integration APIs
-
Management APIs
- Appendix
- FAQs
- General Reference
Show all
Copied.
Developing Mapping Scripts
OneAccess can map the organization and user attributes of an enterprise to application systems. Application attribute values can be automatically generated using the mapping script. Additionally, the mapped attribute values can be restricted.
The following describes how to develop a mapping definition script.
Code Rule
OneAccess imposes several restrictions on mapping scripts, including disabling Java class, limiting CPU usage time, and restricting memory usage, the script format, and the use of certain functions.
- Do not use Java class.
If the following code is used:
var File = Java.type('java.io.File'); File;
The following exception will be thrown:
java.lang.ClassNotFoundException: java.io.File
- Limit the CPU usage time.
By default, the execution time is limited to 1 second. If the execution time exceeds this limit, an exception will be thrown.
If the following code is used:
do{}while(true);
The following exception will be thrown:
ScriptCPUAbuseException
- Limit the memory usage.
The default size is 10 MB. If the size exceeds this limit, an exception will be thrown.
If the following code is used:
var o={},i=0; while (true) {o[i++] = 'abc'}
The following exception will be thrown:
ScriptMemoryAbuseException
- Restrict the script format.
To ensure proper script formatting, the if, while, and for statements must be enclosed in braces. Failure to do so may result in format errors.
If the following code is used:
var o={},i=0; while (true) o[i++] = 'abc';
The following exception will be thrown:
BracesException
- Restrict the use of certain functions.
The following functions cannot be used in the code. If they are included, they will have no effect.
print echo quit exit readFully readLine load loadWithNewGlobal
Example Scripts
- User attributes
The user object can be used in the script and contains all user attributes. The specific attributes are subject to the attribute code in the attribute definition. For details about managing user attributes, see Managing User Attributes. For details about managing account attributes, see 9.
- Example 1: Map the user registration time:
var createdAt = user.createdAt; var date =new Date(createdAt); date.toISOString();
- Example 2: Map the mobile phone number of a user and hide the four digits in the middle:
var mobile = user.mobile; var result = ""; if(mobile.length == 15) { result = mobile.slice(0,7) + "****" + mobile.slice(-4); } result;
- Example 3: Generate a user email address based on the username:
var username = user.userName; username.toLowerCase()+"@huaweicloud.com";
- Example 1: Map the user registration time:
- Organization attributes
The organization object can be used in the script and contains all the attributes of the organization.
- Example 1: Map an organization name.
var orgName = organization.name; orgName.toString();
- Example 2: Map organization code.
var orgCode = organization.code; orgCode.toString();
- Example 3: Map an organization ID.
var id= organization.id; id.toString();
- Example 1: Map an organization name.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot