可扩展访问控制标记语言规范书_第1页
可扩展访问控制标记语言规范书_第2页
可扩展访问控制标记语言规范书_第3页
可扩展访问控制标记语言规范书_第4页
可扩展访问控制标记语言规范书_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

可扩展访问控制标记语言规范书一、XACML核心概念与体系架构1.1核心组件定义可扩展访问控制标记语言(eXtensibleAccessControlMarkupLanguage,XACML)是由OASIS(结构化信息标准促进组织)制定的一种基于XML的访问控制策略语言,旨在为跨平台、跨应用的访问控制提供统一的标准化解决方案。其核心组件包括策略管理点(PAP)、策略决策点(PDP)、策略执行点(PEP)、策略信息点(PIP)和属性权威(AttributeAuthority)五大模块,各组件通过标准化接口协同工作,实现完整的访问控制流程。PAP作为策略管理的核心,负责访问控制策略的创建、存储、修改和删除操作,支持管理员通过图形界面或编程接口进行策略生命周期管理。PDP是XACML体系的决策引擎,接收来自PEP的访问请求,结合PIP提供的属性信息和PAP存储的策略规则,执行复杂的逻辑判断并返回授权决策结果。PEP则作为访问控制的执行入口,嵌入到应用系统或服务中,负责拦截用户的资源访问请求,将请求转换为XACML标准格式发送至PDP,并根据返回的决策结果允许或拒绝访问。PIP的主要功能是收集和提供访问决策所需的各类属性信息,包括用户属性(如角色、部门、权限等级)、资源属性(如资源类型、敏感度级别、所属组织)和环境属性(如访问时间、IP地址、设备类型)。属性权威则是属性信息的权威来源,如LDAP目录服务、数据库系统或身份认证服务器,PIP通过标准化协议从属性权威获取实时属性数据。1.2体系架构工作流程XACML的典型工作流程始于用户发起资源访问请求,PEP拦截该请求后,首先对请求进行标准化处理,提取用户标识、资源地址、操作类型等核心信息,并生成XACML请求上下文。随后,PEP将请求上下文发送至PDP,同时根据需要向PIP请求补充缺失的属性信息。PDP接收到请求后,从PAP加载适用的访问控制策略,结合PIP提供的属性数据,执行策略匹配和逻辑运算。在策略匹配过程中,PDP会根据请求中的属性值与策略规则中的条件进行逐一比对,支持基于角色的访问控制(RBAC)、基于属性的访问控制(ABAC)和基于规则的访问控制(RBAC)等多种访问控制模型。当存在多个匹配策略时,PDP通过策略组合算法(如优先、拒绝优先、首次匹配等)解决策略冲突,最终生成包含决策结果(允许、拒绝、不确定、不可用)的XACML响应上下文。PEP接收到PDP的决策结果后,执行相应的访问控制动作,允许或拒绝用户的资源访问请求,并可根据需要将决策日志发送至审计系统。整个流程通过标准化的XML格式实现组件间的通信,确保不同厂商的产品能够无缝集成,实现跨域、跨系统的统一访问控制。二、XACML策略语言规范2.1策略结构与元素定义XACML策略采用层次化结构设计,主要包括策略集(PolicySet)、策略(Policy)、规则(Rule)和目标(Target)四个核心层次。策略集是最高层次的容器,可包含多个策略或子策略集,用于组织和管理复杂的访问控制策略体系。策略是访问控制规则的集合,通常针对特定类型的资源或业务场景定义,每个策略包含一个目标和多个规则。目标(Target)用于定义策略或规则的适用范围,通过匹配请求中的用户、资源、操作和环境属性来确定策略是否适用于当前请求。目标由一组匹配表达式组成,支持使用逻辑运算符(与、或、非)组合多个匹配条件,例如“仅允许部门为研发部且角色为工程师的用户在工作日访问文档资源”。规则是XACML策略的基本决策单元,包含规则ID、规则效果(允许或拒绝)、目标、条件(Condition)和义务(Obligation)等元素。规则效果定义了规则匹配时的决策结果,条件元素用于实现复杂的逻辑判断,支持使用XPath表达式或函数进行属性值的计算和比较。义务元素则用于指定决策结果执行时需要完成的附加操作,如记录审计日志、发送通知消息或触发额外的认证流程。2.2函数与表达式语言XACML定义了丰富的函数库,支持字符串处理、数值计算、日期时间操作、集合运算和逻辑判断等多种操作,为策略规则的编写提供强大的表达能力。字符串函数包括字符串比较、拼接、截取和正则表达式匹配,例如string-equal函数用于比较两个字符串是否相等,string-match函数支持使用正则表达式进行模式匹配。数值函数支持整数、浮点数的加减乘除运算和比较操作,如integer-greater-than用于判断一个整数是否大于另一个整数,double-sum用于计算多个数值的总和。日期时间函数则提供了日期比较、时间差计算和时区转换功能,例如date-time-in-range用于判断当前时间是否在指定的时间范围内。XACML的表达式语言基于XML语法,允许在策略规则中嵌套函数调用和属性引用,实现复杂的逻辑计算。例如,通过and函数组合多个条件表达式,或通过if-then-else函数实现分支逻辑。表达式语言还支持变量定义和引用,允许将重复使用的计算逻辑封装为变量,提高策略的可读性和可维护性。2.3策略组合算法当多个策略或规则同时匹配访问请求时,XACML通过策略组合算法解决决策冲突,生成最终的授权决策。标准的策略组合算法包括拒绝优先(deny-overrides)、允许优先(permit-overrides)、首次匹配(first-applicable)、仅允许(only-one-applicable)和加权组合(weighted-combination)等多种类型。拒绝优先算法是最严格的组合策略,只要有一个规则返回拒绝结果,最终决策即为拒绝,适用于对安全性要求较高的场景,如金融系统或医疗数据访问控制。允许优先算法则相反,只要有一个规则返回允许结果,最终决策即为允许,适用于强调可用性的协作系统。首次匹配算法按照策略或规则的定义顺序,返回第一个匹配规则的决策结果,适用于具有明确优先级的策略体系。加权组合算法为每个策略或规则分配权重值,根据匹配规则的权重总和计算最终决策结果,支持更精细化的访问控制策略。例如,为管理员角色的规则分配较高权重,当普通用户规则和管理员规则同时匹配时,管理员规则的权重将主导最终决策。XACML还支持自定义组合算法,允许组织根据自身业务需求实现特定的冲突解决逻辑。三、XACML请求与响应规范3.1请求上下文结构XACML请求上下文采用XML格式定义,包含访问请求的所有必要信息,主要包括主体(Subject)、资源(Resource)、操作(Action)和环境(Environment)四个核心元素。主体元素用于描述访问请求的发起者,包含用户标识、角色、所属组织等属性信息,支持通过多个属性值对(Attribute)定义复杂的主体特征。资源元素定义了请求访问的目标资源,包括资源ID、资源类型、资源路径和敏感度级别等属性,支持通过嵌套结构描述资源的层次关系。操作元素指定了用户对资源执行的操作类型,如读取、写入、修改或删除,可通过属性值定义操作的具体参数。环境元素则描述了请求发生的上下文环境,包括访问时间、IP地址、设备类型、网络位置等信息,用于实现基于环境条件的访问控制。请求上下文还包含请求ID、返回属性标志和策略集合ID等辅助元素,请求ID用于唯一标识每个访问请求,便于日志记录和问题排查。返回属性标志指示PDP是否需要在响应中返回决策过程中使用的属性信息,策略集合ID则用于指定PDP需要使用的特定策略集合,实现多策略体系的灵活切换。3.2响应上下文结构XACML响应上下文包含PDP的授权决策结果和相关附加信息,主要包括决策结果(Decision)、状态(Status)、义务(Obligation)和建议(Advice)四个核心元素。决策结果元素返回最终的授权决策,取值包括允许(Permit)、拒绝(Deny)、不确定(Indeterminate)和不可用(NotApplicable)四种类型。状态元素用于描述决策过程的执行状态,当决策结果为不确定或不可用时,状态元素提供详细的错误代码和描述信息,帮助PEP定位问题原因。义务元素指定了PEP在执行决策结果时必须完成的操作,如记录审计日志、触发二次认证或发送通知消息,义务元素包含操作类型、参数列表和执行条件等信息。建议元素则提供了可选的附加操作建议,如提示用户申请更高权限或联系管理员,建议元素不会影响决策结果的执行,但可提升用户体验和系统的可维护性。响应上下文还包含请求ID属性,用于关联请求和响应,便于跟踪完整的访问控制流程。3.3错误处理与状态码XACML定义了标准化的错误处理机制和状态码,用于在决策过程中出现异常时提供明确的错误信息。常见的状态码包括语法错误(SyntaxError)、处理错误(ProcessingError)、缺失属性(MissingAttribute)、不支持的函数(UnsupportedFunction)和策略冲突(PolicyConflict)等类型。语法错误状态码表示请求上下文的XML格式不符合XACML规范,如标签缺失、属性值格式错误或命名空间不正确。处理错误状态码表示PDP在执行决策过程中遇到内部错误,如数据库连接失败、策略加载错误或内存不足。缺失属性状态码表示PDP无法获取决策所需的必要属性信息,如用户角色属性或资源敏感度属性。不支持的函数状态码表示请求中使用了PDP不支持的XACML函数,策略冲突状态码表示多个策略规则的决策结果存在无法解决的冲突。每个状态码包含一个标准的错误标识符和可选的详细描述信息,PEP可根据状态码采取相应的处理措施,如返回友好的错误提示给用户或记录详细的错误日志。四、XACML属性与数据类型规范4.1属性分类与定义XACML属性是访问控制决策的核心依据,根据属性的来源和用途可分为用户属性、资源属性、操作属性和环境属性四大类。用户属性描述了访问请求发起者的特征信息,包括用户ID、姓名、邮箱、角色、部门、职位、权限等级和安全级别等,支持通过多值属性定义用户的多重角色或权限。资源属性定义了被访问资源的特征信息,包括资源ID、资源名称、资源类型、资源路径、敏感度级别、所属组织、创建时间和修改时间等,可通过属性值实现基于资源类型或敏感度的访问控制。操作属性描述了用户对资源执行的操作特征,包括操作类型、操作名称、操作参数和操作级别等,支持通过属性值限制特定操作的执行条件。环境属性描述了访问请求发生的上下文环境信息,包括访问时间、IP地址、设备类型、操作系统、浏览器类型、网络位置和安全状态等,可实现基于时间、地点或设备的访问控制策略。XACML还支持自定义属性类型,允许组织根据自身业务需求定义特定的属性,如项目ID、合同编号或客户等级等。4.2数据类型与格式规范XACML定义了丰富的标准数据类型,包括基本数据类型、集合数据类型和结构化数据类型三大类。基本数据类型包括字符串(string)、整数(integer)、浮点数(double)、布尔值(boolean)、日期时间(dateTime)、时间(time)、日期(date)和IP地址(ipAddress)等,每种数据类型都有严格的格式规范和验证规则。集合数据类型用于表示多个相同类型的属性值,如字符串集合(stringBag)、整数集合(integerBag)和日期时间集合(dateTimeBag),支持通过集合运算函数实现复杂的条件判断。结构化数据类型则用于表示具有复杂结构的属性信息,如X500名称(x500Name)、RFC822邮箱地址(rfc822Name)和统一资源标识符(anyURI)等,每种结构化数据类型都有特定的语法格式和解析规则。XACML还支持数据类型转换函数,允许在策略规则中进行数据类型的转换,如将字符串转换为整数、将日期时间转换为时间或将IP地址转换为字符串。数据类型转换函数提供严格的格式验证,当转换失败时将返回错误状态,确保策略规则的执行准确性。4.3属性检索与缓存机制PIP作为属性信息的提供者,支持多种属性检索方式,包括主动拉取、被动推送和本地缓存三种模式。主动拉取模式下,PIP根据PDP的属性请求,从属性权威实时获取最新的属性数据,适用于对属性实时性要求较高的场景。被动推送模式下,属性权威主动将属性变更信息推送至PIP,PIP更新本地缓存并通知PDP策略可能需要重新评估,适用于属性变更频率较低的场景。本地缓存机制用于提高属性检索的性能和可靠性,PIP将频繁使用的属性数据存储在本地缓存中,当PDP请求属性时,首先从缓存中获取数据,若缓存数据不存在或已过期,则从属性权威获取最新数据并更新缓存。缓存机制支持配置缓存过期时间、缓存大小和缓存策略,如先进先出(FIFO)、最近最少使用(LRU)或最不常用(LFU)等,以平衡性能和数据一致性。XACML还定义了属性检索的标准化协议,包括SAML(安全断言标记语言)、LDAP(轻量级目录访问协议)和RESTfulAPI等,PIP通过标准化协议与不同类型的属性权威进行交互,实现属性信息的统一获取和管理。五、XACML策略管理与部署规范5.1策略生命周期管理XACML策略的生命周期包括策略创建、策略审核、策略发布、策略执行、策略修改和策略废止六个阶段,每个阶段都有明确的流程和控制要求。策略创建阶段由策略管理员根据业务需求编写XACML策略文档,支持使用图形化工具或文本编辑器进行策略设计,策略文档需包含策略目标、规则集合、组合算法和属性引用等核心内容。策略审核阶段由安全专家或合规团队对策略文档进行审查,验证策略的安全性、合规性和业务适用性,审核内容包括规则逻辑的正确性、权限分配的合理性和冲突规则的处理方式。策略审核通过后,进入策略发布阶段,策略管理员将策略文档上传至PAP,PAP对策略进行语法验证和格式转换,将策略存储到策略数据库中,并发布至PDP供决策使用。策略执行阶段,PDP实时加载策略并处理访问请求,策略管理员可通过PAP监控策略的执行情况,包括决策数量、决策结果分布和规则匹配频率等指标。当业务需求发生变化时,进入策略修改阶段,策略管理员对策略文档进行修改,经过重新审核和发布后,替换原有的策略版本。策略废止阶段用于淘汰不再适用的策略,策略管理员将策略标记为废止状态,PDP停止加载和使用该策略,并将策略归档存储。5.2策略版本控制与回滚机制XACML支持策略版本控制,每个策略版本都有唯一的版本标识符和版本号,版本号通常采用主版本号.次版本号.修订号的格式,如1.0.0、1.1.0或2.0.1。版本控制机制允许同时存在多个策略版本,PDP可根据请求上下文或配置参数选择使用特定版本的策略,实现策略的灰度发布和A/B测试。策略回滚机制用于在策略发布后出现问题时,快速恢复到之前的稳定版本,策略回滚操作由策略管理员通过PAP发起,PAP将指定版本的策略重新发布至PDP,PDP实时切换策略版本并处理后续的访问请求。策略回滚机制支持配置回滚触发条件,如决策错误率超过阈值、用户投诉数量达到上限或系统性能下降等,当触发条件满足时,自动执行策略回滚操作。版本控制和回滚机制还支持策略变更的审计跟踪,记录每个策略版本的创建时间、创建人、修改内容和审核记录,便于追溯策略变更的历史和原因。审计跟踪信息存储在专门的审计数据库中,支持生成合规报告和满足监管要求。5.3策略部署与集成模式XACML策略的部署模式包括集中式部署、分布式部署和混合式部署三种类型,集中式部署模式下,所有XACML组件(PAP、PDP、PIP)集中部署在数据中心,统一管理和维护,适用于中小型组织或对集中控制要求较高的场景。分布式部署模式下,XACML组件分布部署在多个地理位置或云环境中,通过标准化协议进行通信,适用于大型企业或跨地域的访问控制需求。混合式部署模式结合了集中式和分布式的优点,核心策略管理功能(如PAP和PDP)集中部署,而策略执行点(PEP)和策略信息点(PIP)分布部署在各个应用系统或边缘节点,实现集中管理和分布式执行的平衡。XACML还支持与现有访问控制体系的集成,包括与RBAC系统、ABAC系统、身份认证系统和权限管理系统的对接,通过标准化接口实现数据共享和功能互补。策略集成模式包括代理模式、嵌入模式和网关模式三种类型,代理模式下,XACML组件作为独立的服务运行,通过代理服务器与应用系统进行交互,无需修改应用系统代码。嵌入模式下,PEP组件直接嵌入到应用系统中,与应用系统紧密集成,实现更细粒度的访问控制。网关模式下,XACML组件作为访问控制网关部署在应用系统前端,拦截所有进入应用系统的请求,实现统一的访问控制入口。六、XACML安全与合规规范6.1通信安全机制XACML组件间的通信采用多种安全机制保障数据的机密性、完整性和真实性,主要包括传输层安全(TLS)、消息层安全(XMLSignature和XMLEncryption)和身份认证机制。传输层安全通过TLS协议对组件间的通信通道进行加密,防止数据在传输过程中被窃听或篡改,支持TLS1.2和TLS1.3等最新版本的加密协议。消息层安全通过XMLSignature对XACML请求和响应消息进行数字签名,确保消息的完整性和真实性,接收方通过验证签名可确认消息未被篡改且发送方身份合法。XMLEncryption则用于对消息中的敏感信息进行加密,如用户密码、资源ID或属性值,只有拥有解密密钥的接收方才能读取加密内容。身份认证机制用于验证XACML组件的身份,支持基于证书的身份认证、基于令牌的身份认证和基于用户名密码的身份认证等多种方式。基于证书的身份认证使用X.509数字证书验证组件身份,适用于高安全性要求的场景;基于令牌的身份认证使用JSONWebToken(JWT)或SAML断言传递身份信息,适用于云环境或分布式系统;基于用户名密码的身份认证则通过用户名和密码验证组件身份,适用于内部测试或低安全性要求的场景。6.2策略安全与访问控制XACML自身的策略管理和访问控制采用分层权限模型,将用户分为超级管理员、策略管理员、安全审核员和普通用户四个角色,每个角色拥有不同的权限和操作范围。超级管理员拥有最高权限,可进行系统配置、用户管理和权限分配操作;策略管理员负责策略的创建、修改和发布操作,但无法修改系统配置或其他用户的权限;安全审核员负责策略审核、日志审计和合规检查操作,仅具有查看权限而无修改权限;普通用户则只能查看公开的策略信息和自身的访问权限。策略安全还包括策略的加密存储和访问控制,PAP将策略文档加密存储在数据库中,只有授权的用户才能访问和修改策略文档,加密算法支持AES-256、RSA-2048等高强度加密标准。策略访问控制通过XACML自身的访问控制机制实现,PAP作为一个受保护的资源,其访问请求由内置的PEP拦截并发送至PDP进行决策,确保只有授权用户才能进行策略管理操作。6.3合规性与审计要求XACML的设计和实现满足多种合规性要求,包括GDPR(通用数据保护条例)、HIPAA(健康保险流通与责任法案)、PCIDSS(支付卡行业数据安全标准)和SOX(萨班斯-奥克斯利法案)等,通过细粒度的访问控制和审计跟踪功能,帮助组织满足监管机构的合规要求。GDPR要求组织对个人数据的访问进行严格控制,XACML通过基于属性的访问控制实现对个人数据的精细化授权,确保只有授权用户才能访问个人数据,并记录所有访问行为。HIPAA要求医疗数据的访问必须符合最小权限原则,XACML通过策略规则限制用户只能访问其工作职责所需的医疗数据,并通过审计日志跟踪所有数据访问行为。PCIDSS要求支付卡数据的访问必须进行严格的身份认证和访问控制,XACML通过多因素身份认证和基于环境的访问控制,确保只有授权用户在安全的环境下才能访问支付卡数据。SOX要求对财务数据的访问和修改进行审计跟踪,XACML通过详细的审计日志记录所有财务数据的访问请求、决策结果和操作行为,支持生成合规报告和满足审计要求。审计跟踪功能是XACML合规性的核心组成部分,记录所有访问请求、决策结果、策略变更和系统操作,审计日志包含时间戳、用户标识、资源信息、操作类型、决策结果和状态信息等详细内容,日志数据存储在专门的审计数据库中,支持长期保存和查询分析。审计日志还支持实时监控和告警功能,当检测到异常访问行为或策略变更时,自动发送告警通知给安全管理员,及时发现和处理安全事件。七、XACML扩展与定制规范7.1函数与算法扩展XACML提供了灵活的扩展机制,允许组织根据自身业务需求自定义函数和算法,增强策略语言的表达能力和决策逻辑。函数扩展通过实现XACML定义的函数接口,开发自定义的字符串处理、数值计算、日期时间操作或逻辑判断函数,例如开发一个自定义的risk-score-calculation函数,根据用户的历史行为数据计算风险评分,并将风险评分作为访问控制的决策依据。算法扩展允许自定义策略组合算法、匹配算法和决策算法,例如开发一个基于机器学习的决策算法,根据历史访问数据和决策结果训练模型,实现智能化的访问控制决策。自定义函数和算法需要遵循XACML的扩展规范,包括函数签名、参数类型、返回值类型和错误处理机制,确保自定义组件能够与标准XACML组件无缝集成。XACML还支持通过插件机制加载和管理自定义函数和算法,PDP启动时自动加载指定目录下的插件文件,无需修改核心代码即可扩展功能。插件机制支持热插拔功能,允许在系统运行时动态加载或卸载自定义组件,提高系统的灵活性和可维护性。7.2数据类型与属性扩展XACML支持自定义数据类型和属性,满足特定业务场景的需求,例如定义一个project-id数据类型,用于表示项目的唯一标识符,或定义一个contract-status属性,用于表示合同的状态信息。自定义数据类型需要定义数据类型的名称、格式规范、验证规则和转换函数,确保数据类型的正确性和兼容性。属性扩展允许定义新的属性类型和属性权威,例如定义一个device-fingerprint属性,用于表示用户设备的唯一标识,或定义一个external-authority属性权威,从第三方服务获取属性信息。自定义属性需要定义属性的名称、数据类型、属性权威类型和检索协议,确保PIP能够正确获取和提供属性信息。XACML的扩展机制还支持自定义命名空间,允许组织为自定义函数、算法、数据类型和属性定义独立的命名空间,避免与标准XACML元素发生命名冲突。命名空间采用URI格式定义,例如/xacml/extensions,自定义元素通过命名空间前缀进行标识,如ext:risk-score-calculation。7.3协议与接口扩展XACML支持自定义通信协议和接口,满足不同系统集成的需求,例如开发一个基于MQTT协议的通信接口,实现物联网设备与XACML组件的通信,或开发一个基于gRPC的接口,提高组件间的通信性能。自定义协议和接口需要遵循XACML的消息格式规范,确保请求和响应消息的兼容性和互操作性。接口扩展允许自定义PAP、PDP、PIP和PEP的功能接口,例如为PAP开发一个RESTfulAPI接口,支持通过编程方式进行策略管理,或为PEP开发一个嵌入式SDK,简化应用系统的集成过程。自定义接口需要定义接口的方法、参数、返回值和错误处理机制,确保接口的易用性和稳定性。XACML的扩展机制还支持自定义策略语言语法,允许组织在XACML基础上扩展新的语法元素,例如开发一个简化的策略语言,降低策略编写的复杂度,或开发一个领域特定的策略语言,针对特定行业或业务场景优化策略表达。自定义语法需要定义语法规则、解析器和编译器,确保策略文档能够正确转换为XACML标准格式。八、XACML性能优化与最佳实践8.1决策性能优化策略XACML决策性能的优化主要包括策略优化、缓存优化和并行处理三个方面。策略优化通过简化策略结构、减少规则数量和优化规则逻辑,降低PDP的决策计算复杂度,例如将多个相似的规则合并为一个规则,使用目标元素缩小策略的适用范围,或使用函数组合减少规则的条件数量。缓存优化通过缓存决策结果、策略规则和属性信息,减少重复计算和属性检索的开销,例如缓存频繁访问的决策结果,当相同的请求再次发生时,直接返回缓存的决策结果;缓存常用的策略规则,避免每次决策都重新加载策略;缓存属性信息,减少从属性权威获取数据的次数。缓存机制支持配置缓存过期时间、缓存大小和缓存策略,以平衡性能和数据一致性。并行处理通过多线程或分布式架构提高决策处理能力,例如在PDP中使用多线程同时处理多个访问请求,或部署多个PDP节点实现负载均衡。分布式架构下,PDP节点通过共享策

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论