AI安全最佳实践:AI云原生开发安全评估矩阵(下)

news2025/2/7 7:27:52

上篇小李哥带大家一起了解了什么是AI应用云原生开发安全评估矩阵,并且介绍了利用该矩阵如何确定我们云上AI应用的安全评估范围,接下来我们将继续本系列的下篇,基于该安全评估矩阵设计和实施我们系统应具备的安全控制。

优先考虑的安全控制

确定了生成式 AI 负载的安全范围后,接下来就需要在确保安全的前提下,加速业务推进。让我们看看有哪些关键安全事项值得优先关注。

治理与合规 + 法律与隐私

消费级应用(Scope 1)企业级应用(Scope 2)中,大家需要特别关注服务条款、许可证、数据主权及其他法律相关问题。明确企业的数据管理要求,并确保与法律和采购部门密切合作,以评估这些要求如何适用于 Scope 1 或 Scope 2 的应用程序。数据治理至关重要,企业可以基于现有的数据治理策略,将其扩展到生成式 AI 负载。例如,可以制定一项政策,禁止在 Scope 1 应用中输入个人身份信息(PII)、机密数据或专有数据

如果第三方模型已经具备所需的数据和功能,那么 Scope 1 或 Scope 2 可能满足业务需求。但如果企业希望对自身业务数据进行总结、关联分析、生成新的洞察,或是自动化重复性任务,则可能需要选择 Scope 3、4 或 5

  • Scope 3:使用预训练模型(如 Amazon Bedrock 提供的模型)构建自定义 AI 应用
  • Scope 4:使用企业数据对模型进行微调,生成特定于企业需求的增强模型
  • Scope 5:从零开始训练全新的自研模型

在 Scope 3、4 和 5 中,业务数据可能用于模型的训练、微调或作为输出的一部分。因此,企业必须明确数据分类和数据类型。例如,Scope 3 可能利用 RAG(检索增强生成) 机制,仅在推理时查询企业数据,而不是将数据直接嵌入模型中。相比之下,Scope 4 和 Scope 5 可能会直接在训练或微调过程中使用企业数据,从而影响模型的安全性和数据治理要求。

此外,法律团队需要关注EULA(最终用户许可协议)、TOS(服务条款),以及其他合同要求。尤其是在 Scope 5(自研模型)场景下,企业需要制定自己的服务条款,明确对外提供模型时的法律约束。同时,如果企业业务涉及GDPR(欧盟通用数据保护条例),则需要谨慎考虑“被遗忘权”或数据删除的相关影响。目前,唯一彻底删除训练数据的方法是重新训练模型,这一过程不仅昂贵,还可能在部分训练数据较小时显得不够现实。

风险管理

虽然生成式 AI 应用看起来和传统软件相似,但其自由输入的交互方式使其面临额外的安全挑战。企业需要识别适用于自身 AI 负载的风险,并制定合理的缓解策略

常见的风险管理方式包括风险评估威胁建模。对于 Scope 1 和 Scope 2,重点是评估第三方供应商的安全风险,并明确企业作为用户需要承担的安全责任。而对于 Scope 3、4 和 5,企业需要自行实施威胁建模,以识别特定的生成式 AI 安全风险。

例如,LLM 面临的一项独特安全威胁是提示词注入(Prompt Injection),即通过精心构造的输入,使模型生成意外或有害的响应。这种攻击可能导致数据泄露、系统访问控制失效,甚至被用于恶意操纵信息。近年来,NIST、MITRE 和 OWASP 都发布了生成式 AI 安全指南,其中提示词注入被列为首要安全风险。这一威胁类似于 SQL 注入、JSON/XML 注入等传统攻击方式,因此网络安全专家可以借鉴已有经验来防范。

生成式 AI 引入了全新的安全挑战,企业必须调整现有的网络安全实践,以适应这些新威胁。这需要安全团队与 AI 开发团队密切合作,共同分析生成式 AI 应用的威胁模型,并定义最佳安全实践。

安全控制

安全控制是实现合规、策略落地和风险缓解的关键。让我们以身份和访问管理(IAM)为例,说明如何在 Scope 3-5 级别的 AI 负载中实施安全控制。

在推理(Inference)过程中,Scope 3-5 使用的基础模型是不可变的。API 仅接受输入,并返回模型推理结果。模型在发布后是静态的,不会存储新的数据,也无法直接调整推理结果。因此,访问控制成为关键的安全防护手段

现代数据库通常支持表级、行级、列级甚至字段级的访问控制,但生成式 AI 目前无法实现同样精细的访问管理。例如,在 LLM 中,词向量(Embedding) 是模型训练过程中形成的数学表示,用于描述数据之间的关系。但目前无法在向量数据库级别对特定的 embedding 设置访问权限,这意味着一旦用户获得了模型的访问权限,他们就可以访问所有训练数据的推理结果

因此,在 Scope 4(微调)或 Scope 5(自研模型)中,企业应通过应用层安全策略来增强访问控制。例如,使用 RAG 数据流,让模型从外部数据库检索数据,而不是直接嵌入数据到模型中,从而在不暴露敏感数据的情况下提供个性化推理结果。

如果企业使用 Amazon Bedrock 在 Scope 4 进行模型微调,或者在 Scope 5 训练自研模型,那么可以通过IAM 策略控制对推理端点的访问。例如:

{
	"Version": "2012-10-17",
	"Statement": {
		"Sid": "AllowInference",
		"Effect": "Allow",
		"Action": [
			"bedrock:InvokeModel"
		],
		"Resource": "arn:aws:bedrock:*::<foundation-model>/<model-id-of-model-to-allow>
	}
}

这条 IAM 规则确保只有特定用户或应用可以调用 AI 模型的推理 API,从而防止未经授权的访问

在大多数场景下,应用层 会调用 Amazon Bedrock 端点 来与模型进行交互。这个前端应用可以使用身份解决方案(如 Amazon CognitoAWS IAM Identity Center)来进行用户身份验证和授权,并根据角色、属性和用户群体 限制特定操作和对某些数据的访问权限。例如,应用程序可以基于用户的授权选择不同的模型。或者如果应用程序使用 RAG(检索增强生成) 机制来查询外部数据源,为生成式 AI 响应提供即时数据(例如 Amazon KendraAmazon OpenSearch Serverless),那么可以使用授权层 来过滤访问权限,以确保用户只能访问符合其角色和权限的数据。由此可见,身份和访问管理(IAM) 原则与企业开发的其他应用程序基本相同,只是需要考虑生成式 AI 负载的独特能力和架构特性,以确保安全性。

弹性架构(Resilience)

最后,可用性是信息安全 C.I.A. 三要素(机密性、完整性、可用性) 之一。构建高可用的应用 对于满足企业的业务连续性要求至关重要。对于 Scope 1 和 Scope 2,企业应了解供应商的可用性策略 是否符合业务需求,并慎重考虑底层模型、API 或应用层不可用时对业务的影响。此外,还要评估复杂的提示词和模型响应是否会影响使用配额,以及应用的计费成本

对于 Scope 3、4 和 5,企业需要设置合理的超时时间 以适应复杂的提示词和推理过程。此外,还需要注意模型定义的字符输入限制,并采用指数回退(Backoff and Retry) 以及熔断模式(Circuit Breaker Patterns) 等容错设计,以保证良好的用户体验。在使用 向量数据库 时,建议采用高可用配置灾难恢复计划,以增强系统对不同故障模式的容错能力。

在推理和训练管道中,实例灵活性(Instance Flexibility) 是另一个关键架构考虑因素,特别是对于高优先级任务,企业可能需要预留计算资源预置实例。如果使用 Amazon BedrockSageMaker 等托管服务,建议在多区域部署策略 中验证不同 AWS 区域的可用性和功能一致性。同样,在 Scope 4 和 Scope 5 任务的跨区域支持 方面,企业需要考虑微调或训练数据的跨区域可用性。例如,在 Scope 5(自研模型) 场景下,若使用 SageMaker 进行模型训练,可以使用检查点(Checkpoint) 保存训练进度,以便在必要时从最后的检查点恢复训练,而不必从零开始。

大家可以参考 AWS Resilience Hub 以及 Well-Architected Framework 中的 可靠性支柱(Reliability Pillar)运营卓越支柱(Operational Excellence Pillar),以优化应用的弹性架构设计。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2294172.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Windows DeepSeek API调用基础教程-Python

DeepSeek API 调用&#x1f680; 在最近DeepSeek大火之后&#xff0c;在各个媒体上都能看到对这个大模型的报道&#xff0c;这个使用MoE的架构的大模型&#xff0c;在使用体验上&#xff0c;确实让我眼前一亮&#xff0c;我自己平时也是已经在用着GPT-o1&#xff0c;对比下来发…

达梦数据库从单主模式转换为主备模式

目录标题 达梦数据库单主转主备配置笔记前期准备服务器环境数据库安装磁盘空间 流程流程图说明 详细步骤1. 检查主库归档模式2. 配置主库配置文件dm.ini 文件dmmal.ini 文件dmarch.ini 文件 3. 备份主库数据库4. 备库配置新建备库数据库配置备库配置文件dm.ini 文件复制主库的 …

SpringUI Web高端动态交互元件库

Axure Web高端动态交互元件库是一个专为Web设计与开发领域设计的高质量资源集合&#xff0c;旨在加速原型设计和开发流程。以下是关于这个元件库的详细介绍&#xff1a; 一、概述 Axure Web高端动态交互元件库是一个集成了多种预制、高质量交互组件的工具集合。这些组件经过精…

ES冷热数据分离配置

冷热数据是根据索引创建时间来进行迁移的。一旦迁移到冷数据节点&#xff0c;则无法再恢复成热数据&#xff0c;因为热数据节点中该索引已经没有分片存在了。 基于Docker搭建ES集群,并设置冷热数据节点 配置冷热数据迁移策略 PUT https://192.168.x.xx:19200/_ilm/policy/my…

七大排序思想

目录 七大排序的时间复杂度和稳定性 排序 插入排序 简单插入排序 希尔排序 选择排序 简单选择排序 堆排序 交换排序 冒泡排序 快速排序 快排的递归实现 hoare版本的快排 挖坑法的快排 双指针法的快排 快排的非递归 归并排序 归并的递归实现 归并的非递归实现…

制作PE启动盘(内含Win11 iso镜像)

前言 本文用于记录制作PE启动盘过程&#xff0c;学习记录用&#xff0c;如有不对请指出&#xff0c;谢谢&#xff01; 参考视频&#xff1a; 1. 微PE下载&#xff1a;https://www.bilibili.com/video/BV1vT4y1n7JX/?spm_id_from333.788.top_right_bar_window_history.conte…

css字体样式与文本样式详解

目录 一、CSS字体样式 1. 字体类型&#xff08;font-family&#xff09; 2. 字体大小&#xff08;font-size&#xff09; 3. 字体粗细&#xff08;font-weight&#xff09; 4. 字体风格&#xff08;font-style&#xff09; 5. 字体颜色&#xff08;color&#xff09; 6. …

游戏引擎学习第89天

回顾 由于一直没有渲染器&#xff0c;终于决定开始动手做一个渲染器&#xff0c;虽然开始时并不确定该如何进行&#xff0c;但一旦开始做&#xff0c;发现这其实是正确的决定。因此&#xff0c;接下来可能会花一到两周的时间来编写渲染器&#xff0c;甚至可能更长时间&#xf…

Linux学习笔记16---高精度延时实验

延时函数是很常用的 API 函数&#xff0c;在前面的实验中我们使用循环来实现延时函数&#xff0c;但是使用循环来实现的延时函数不准确&#xff0c;误差会很大。虽然使用到延时函数的地方精度要求都不会很严格( 要求严格的话就使用硬件定时器了 ) &#xff0c;但是延时函数肯定…

杨氏数组中查找某一数值是否存在

判断数据是否存在于杨氏矩阵中 &#xff08;小米真题&#xff09; 题目&#xff1a;有一个数字矩阵&#xff0c;矩阵的每行从左到右是递增的&#xff0c;矩阵从上到下是递增的&#xff0c;请编写程序在这样的矩阵中查找某个数字是否存在。 要求&#xff1a;时间复杂度小于O(N) …

51单片机 02 独立按键

一、独立按键控制LED亮灭 轻触按键&#xff1a;相当于是一种电子开关&#xff0c;按下时开关接通&#xff0c;松开时开关断开&#xff0c;实现原理是通过轻触按键内部的金属弹片受力弹动来实现接通和断开。 #include <STC89C5xRC.H> void main() { // P20xFE;while(1){…

AI + 编程时代,飞算JavaAI如何引领行业趋势变革

在当今科技飞速发展的浪潮下&#xff0c;AI 与编程的深度融合已成为不可阻挡的时代趋势&#xff0c;正重塑着各个行业的格局。在这场变革中&#xff0c;飞算JavaAI脱颖而出&#xff0c;凭借其卓越的特性和创新的理念&#xff0c;在 AI 编程领域展现出强大的引领力量&#xff0…

Deepseek本地部署指南:在linux服务器部署,在mac远程web-ui访问

1. 在Linux服务器上部署DeepSeek模型 要在 Linux 上通过 Ollama 安装和使用模型&#xff0c;您可以按照以下步骤进行操作&#xff1a; 步骤 1&#xff1a;安装 Ollama 安装 Ollama&#xff1a; 使用以下命令安装 Ollama&#xff1a; curl -sSfL https://ollama.com/download.…

1-R语言概述

1.认识R语言 1.1 选择R语言的依据 免费的软件编程方便&#xff0c;语言灵活&#xff0c;图形功能强大优秀的内在帮助系统高质量、广泛的统计分析、数据挖掘平台国际上R语言已然是专业数据分析领域的标准 1.2 R的来源 ​ R是S语言的一种实现。S语言是由 AT&T贝尔实验室…

【BQ3568HM开发板】智能家居中控屏连接华为云IoTDA物联网平台

目录 引言 安装OpenHarmony的MQTT库 华为云平台的操作 建立设备 建立物模型 连接华为云平台 发布LED灯状态 代码重构 测试结果 接收平台发送的属性修改命令 设备侧API Topic 下行请求参数说明 上行响应参数说明 程序修改 应用侧API 测试设备属性设置功能 结语…

java 8 在 idea 无法创建 java spring boot 项目的 变通解决办法

java 8 在 idea 无法创建 java spring boot 项目的 变通解决办法 spring boot 3 官方强制 要用 java 17 &#xff0c;但是 不想安装java 17的 &#xff0c;但是又想 使用 spring boot &#xff0c;可以这样 &#xff1a; 在这个网站 https://start.aliyun.com/ 选择 你相对…

web-文件上传-CTFHub

前言 在众多的CTF平台当中&#xff0c;作者认为CTFHub对于初学者来说&#xff0c;是入门平台的不二之选。CTFHub通过自己独特的技能树模块&#xff0c;可以帮助初学者来快速入门。具体请看官方介绍&#xff1a;CTFHub。 作者更新了CTFHub系列&#xff0c;希望小伙伴们多多支持…

SQLAlchemy-2.0中模型定义和alembic的数据库迁移工具

SQLAlchemy-2.0中模型定义和alembic的数据库迁移工具 一、SQLAIchemy的介绍二、数据库引擎1、支持的数据库1.1、sqlite数据库1.2、MySQL数据库1.3、数据库引擎的参数 三、定义模型类1、定义模型2、engine负责数据库迁移 四、alembic数据库迁移⼯具1、安装alembic2、初始化alemb…

C# OpenCV机器视觉:图像风格迁移

在一个充满奇思妙想的创意工作室里&#xff0c;小李正像只热锅上的蚂蚁&#xff0c;为客户的项目挠破了脑袋&#xff0c;急需寻找灵感的火花。他望着眼前那幅平淡无奇的风景图像&#xff0c;心想&#xff1a;“这玩意儿也太普通啦&#xff0c;就像一杯白开水&#xff0c;怎么能…

语言月赛 202311【基因】题解(AC)

》》》点我查看「视频」详解》》》 [语言月赛 202311] 基因 题目描述 有一个长度为 n n n 的字符串 S S S。其只包含有大写字母。 小 A 将 S S S 进行翻转后&#xff0c;得到另一个字符串 S ′ S S′。两个字符串 S S S 与 S ′ S S′ 对应配对。例如说&#xff0c;对…