更新时间:2023-08-28 GMT+08:00

开发自定义认证

创建用于前端认证的函数后端

通过自定义后端开发自定义认证函数,然后调用该函数进行访问认证,实现自定义认证。

  1. 登录ROMA Connect控制台,在“实例”页面单击实例上的“查看控制台”,进入实例控制台。
  2. 创建集成应用。
    1. 在左侧的导航栏选择“集成应用”,单击页面右上角的“创建集成应用”。
    2. 在创建集成应用弹窗中填写集成应用的“名称”,然后单击“确认”。
  3. 在左侧的导航栏选择“服务集成 APIC > 自定义后端”,在“后端列表”页签中单击“创建后端”。
  4. 在创建后端页面配置后端信息,完成后单击“立即创建”。
    图1 自定义后端配置
    表1 后端配置

    参数

    说明

    后端名称

    填写后端的名称,自定义。

    集成应用

    选择2创建的集成应用。

    后端请求方法

    后端的请求方法必须选择“POST”。

    后端请求路径

    填写后端的请求路径,格式如:/getUserInfo/userId。

    后端安全认证

    选择后端的安全认证方式,此处选择“无认证”。

    描述

    填写后端的描述信息。

    高级设置

    高级设置保持默认设置。

    后端创建完成后,页面自动跳转到该后端的编辑器页面,后端类型默认为数据后端。

  5. 开发自定义认证函数的功能实现。

    在编辑器的左上角单击“文件 > 新建函数后端 > 前端自定义认证示例”,在弹窗中单击“确定”,然后编写用于安全认证的函数脚本。

    修改示例中的认证参数名称和认证参数值,此处使用API请求的Header参数“x-auth”作为认证参数,当“x-auth”的值为“user1:xxxx”时将认证通过。

    function execute(data) {
      data = JSON.parse(data)
      body = data.body
      if (body["headers"]["x-auth"] === 'user1:xxxx') {
          result = {
              "status": "allow",
              "context": {
                  "user_name":"user1"
              }
          }
      }
      else {
          result = {
              "status": "deny",
              "context": {
                  "error_code":"1001",
                  "error_message":"incorrect token input"
              }
          }
      }
      return result
    }
  6. 完成函数编辑后,在页面右上角单击“保存”,保存函数后端配置。
  7. 在页面右上角单击“部署”,在确认弹窗中单击“确定”,部署函数后端。

创建前端自定义认证

  1. 在实例控制台左侧的导航栏选择“服务集成 APIC > API策略”,在“自定义认证”页签下单击“创建自定义认证”。
  2. 在创建自定义认证弹窗中配置前端自定义认证信息。
    图2 自定义认证配置
    表2 前端自定义认证配置

    参数

    说明

    认证名称

    填写自定义认证的名称,自定义。

    集成应用

    选择2创建的集成应用。

    类型

    创建前端自定义认证时,选择“前端”。

    函数地址

    选择创建用于前端认证的函数后端中创建的函数后端。

    缓存时间(秒)

    保持默认设置。

    身份来源

    保持默认设置。

    是否发送body

    保持默认设置。

    用户数据

    保持默认设置。

  3. 完成后单击“确定”。