应用身份管理服务 ONEACCESS-如何开发映射脚本:代码规则

时间:2024-06-07 09:20:45

代码规则

在编写映射脚本时, OneAccess 对脚本做了一些限制。包括禁止使用Java class、限制使用CPU的时间、限制内存的使用量、限定脚本格式、限制使用部分函数。

  • 禁止使用Java class。

    如果使用下面的代码:

    var File = Java.type('java.io.File'); File;

    会抛出下面的异常:

    java.lang.ClassNotFoundException: java.io.File
  • 限制使用CPU的时间。

    默认限制执行时间为1秒,超过时间将抛出异常。

    如果使用下面的代码:

    do{}while(true);

    会抛出下面的异常:

    ScriptCPUAbuseException
  • 限制内存的使用量。

    默认大小为10M,超过将抛出异常。

    如果使用下面的代码:

    var o={},i=0; while (true) {o[i++] = 'abc'}

    会抛出下面的异常:

    ScriptMemoryAbuseException
  • 限定脚本格式。

    为了方便重写脚本,脚本中的if、while、for语句必须使用大括号,否则将出现格式错误。

    如果使用下面的代码:

    var o={},i=0; while (true) o[i++] = 'abc';

    会抛出下面的异常:

    BracesException
  • 限制使用部分函数。

    如下的函数不允许在代码中使用,如果使用,将没有任何效果。

    print 
    echo 
    quit 
    exit
    readFully 
    readLine 
    load
    loadWithNewGlobal
support.huaweicloud.com/devg-oneaccess/oneaccess_06_0002.html