检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
案例概述 场景介绍 通过CTS云审计服务,完成对公有云账户对各个云服务资源操作动作和结果的实时记录。 通过在函数工作流服务中创建CTS触发器获取订阅的资源操作信息,经由自定义函数对资源操作的信息进行分析和处理,产生告警日志。 SMN消息通知服务通过短信和邮件推送告警信息,通知业务人员进行处理。处理流程如图1所示。
添加事件源 选择准备中开通的CTS云审计服务,创建CTS触发器,CTS触发器配置如图1所示。 图1 创建CTS触发器 CTS云审计服务监听IAM服务中user资源类型,监听login、logout操作。 父主题: 使用FunctionGraph函数和CTS识别非法IP的登录登出操作
absolute environment: variables: ENV_FIRST: ${env:TENCENTCLOUD_APPID} plugins: - serverless-huawei-functions functions: hello:
函数创建成功。 图2 查看执行结果 创建自定义认证 在APIG中创建自定义认证,对接前端自定义认证的函数。 在服务控制台左侧导航栏,选择“应用中间件 > API网关”登录APIG控制台,在左侧导航栏选择“API管理 > API策略”,在“自定义认证”页签下,单击“创建自定义认证”,弹出“创建自定义认证”对话框。
添加事件源 创建API API分组、自定义认证函数、后端函数均创建成功以后,可以创建API,设置安全认证为自定义认证,并定义后端服务类型为FunctionGraph,步骤如下。 登录APIG控制台,在左侧导航栏选择“API管理 > API列表”,单击右上方的“创建API”。 配置API基本信息,详细如图1、图2所示。
'isBase64Encoded': false, 'headers': { "Content-type": "application/json" }, 'body': 'Hello, FunctionGraph with APIG'
调试并调用API API网关提供了在线调试的功能,因此一般建议在API网关上完成API配置之后,可以先通过此功能确认API是否配置成功。 登录APIG控制台,左侧导航栏选择“API管理 > API列表”,单击进入已创建的API“API_test”,单击“调试”。 在本案例中,需要
String> headers = new HashMap<>(); headers.put("Content-Type", "application/json"); return new APIGTriggerResponse(200, headers, event
'): node_info = redis_node.split(":") startup_nodes.append(ClusterNode(host=node_info[0], port=node_info[1])) logger.info("redis
</manifest> </archive> <appendAssemblyId>false</appendAssemblyId> </configuration> <executions>
必须包含本扩展启动的httpServer的地址和端口。例如,请求头的格式为: headers = { 'Content-type': 'application/json', 'FunctionGraph-Extension-Name': "extensionDemo.sh" 'F
Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFramework>netcoreapp2.1</TargetFramework> <RootNamespace>test</RootNamespace> <As
API的认证方式(APIG触发器参数)。 IAM:IAM认证,只允许IAM用户能访问,安全级别中等 APP:采用Appkey&Appsecret认证,安全级别高,推荐使用 NONE:无认证模式,所有用户均可访问,不推荐使用 枚举值: IAM APP NONE invoke_url String API调用地址(APIG触发器参数)。
API的认证方式(APIG触发器参数)。 IAM:IAM认证,只允许IAM用户能访问,安全级别中等 APP:采用Appkey&Appsecret认证,安全级别高,推荐使用 NONE:无认证模式,所有用户均可访问,不推荐使用 枚举值: IAM APP NONE invoke_url String API调用地址(APIG触发器参数)。
xxx:function:xxxx:xxxx:latest", "condition": "", "approximate_invoke_count": 0 }, "request_payload": "", "response_context":
函数异步执行并返回预留实例请求body体。 响应参数 状态码: 202 表4 响应Header参数 参数 参数类型 描述 Content-Type String application/json 表5 响应Body参数 参数 参数类型 描述 instance_id String 预留实例id 状态码: 404
API的认证方式(APIG触发器参数)。 IAM:IAM认证,只允许IAM用户能访问,安全级别中等 APP:采用Appkey&Appsecret认证,安全级别高,推荐使用 NONE:无认证模式,所有用户均可访问,不推荐使用 枚举值: IAM APP NONE invoke_url String API调用地址(APIG触发器参数)。
OBS桶及函数创建以后,可以为函数添加事件源,添加OBS事件源是通过创建OBS应用事件源实现的,步骤如下。 用户进入fss_examples_image_watermark函数详情页,在“触发器”页签,单击“创建触发器”,弹出“创建触发器”界面。 触发器类型选择“OBS应用事件源”,填写触发器配置信息,如图1所示。
详情请参见事件通道概述。 事件源 事件源是事件的来源,函数流仅支持自定义的应用作为事件源,通过自定义的事件通道发布事件到事件网格。 详情请参见事件源概述。 事件内容格式 参数“事件负载内容”的内容格式。(目前只支持application/json格式。) 事件负载内容 事件内容。 事件发生主题
函数版本的内部标识。 xrole 函数使用的权限委托名称,需要IAM支持,并在IAM界面创建委托,当函数需要访问其他服务时,必须提供该字段。 app_xrole 函数app使用的权限委托名称,需要IAM支持,并在IAM界面创建委托,当函数需要访问其他服务时,必须提供该字段。 description