精华内容
下载资源
问答
  • 22家名企(阿里、腾讯、字节、美团等)人力资源培训体系架构汇编.pdf
  • {企业通用培训}企业架构框架培训 2010年1月 1课程背景 面对当前金融海啸商业危机国际安全问题等世界局势的最新变化如何建立贯彻业务战略的IT战略和IT体系如何实现IT系统的灵活性和互操作性以更快地响应业务需求如何...
  • {企业通用培训}企业架构框架培训 2010年1月 1课程背景 面对当前金融海啸商业危机国际安全问题等世界局势的最新变化如何建立贯彻业务战略的IT战略和IT体系如何实现IT系统的灵活性和互操作性以更快地响应业务需求如何...
  • 针对大型煤炭企业安全培训管理实际,介绍建设安全培训体系的背景、原则和架构,通过铁煤集团安全培训体系的创新性探索实践,阐述强化安全培训的过程管控和提高安全培训效能的具体方法,并就体系建设中需要注意的主要事项...
  • 云计算介绍;内 容;云计算IT新贵;云计算定义;云计算的影响 ;内 容;云计算的关联概念;...云计算基础设施架构 ;云计算存在的难题 ;使用云计算服务的风险;10个使用云计算服务的企业;云计算服务划分;云计算技术和
  • 企业架构框架 TOGAF 拜特 让资金管理得更好 2 什么是架构 架构针对某种特定目标系统的具有体系性的普遍性的问题而提供的通用的解决方案架构往往是对复杂形态的一种共性的体系抽象 一个架构是系统的基本结构它由多个...
  • 架构针对某种特定目标系统的具有体系性的、普遍性的问题而提供的通用的解决方案,架构往往是对复杂形态的一种共性的体系抽象。 一个架构是系统的基本结构,它由多个组件以及它们彼此间的关系而组成,并且在一定环境...
  • 这个时候,企业架构所提供的完整架构体系,对我的架构工作很有帮助。2011年,为浙江省某项目提供业务建模和业务架构设计培训与咨询,感觉到业务和IT的结合,才是信息化系统的完整视图。2017年,作为咨询顾问,为某省...
  • 打造面向应用的云安全体系架构 身份与访问管理 安全众测 自动化 移动安全 安全众测
  • " " " " 企业架构如同战略 9企业架构框架培训 金蝶软件中国有限公司 2010年1月 1 课程背景 面对当前金融海啸商业危机国际安全问题等世界局势的最新变化如何建立贯彻业务战略的战略和体系如何实现系统的灵活性和互...
  • 电力企业培训教学云服务体系设计--互联网 思维与培训价值链深度融合.pdf
  • 工业互联网体系架构网络是基础,平台是核心,安全是保障工业互联网由网络、平台、安全三大功能体系构成。工业互联网的网络体系将连接对象延伸到人、机器设备、工业产品和 工业服务,是实现全产业链...

    工业互联网体系架构 

    网络是基础,平台是核心,安全是保障 

    工业互联网由网络、平台、安全三大功能体系构成。工业互联网的网络体系将连接对象延伸到人、机器设备、工业产品和 工业服务,是实现全产业链全价值链的资源要素互联互通的基础。网络性能需满足实际使用场景下低时延、高可靠、广覆 盖的需求,既要保证高效率的数据传输,也要兼顾工业级的稳健性和可靠性;平台下连设备,上接应用,承载海量数据的 汇聚,支撑建模分析和应用开发,定义了工业互联网的中枢功能层级,在驱动工业全要素、全产业链、全价值链深度互联, 推动资源优化配置,促进生产制造体系和服务体系重塑中发挥着核心作用;安全代表着工业互联网的整体防护能力,涉及 工业互联网领域各个环节,是涵盖设备安全、控制安全、网络安全、平台安全和数据安全的工业互联网多层次安全保障体系,通过监测预警、应急响应、检测评估、攻防测试等手段为工业互联网健康稳定的发展保驾护航。

    工业互联网平台类型 

    平台按客户群体、应用场景、功能支持三个维度划分成五大类

    作为工业互联网的中枢层级,工业互联网平台的功能与效用直接决定了整个工业互联网体系的价值体现,从面向客户群体、 应用场景和功能支持三个维度可以将工业互联网平台分为基础性技术、企业级、特定行业级、专业领域以及跨行业跨领域 五大类平台,各类平台各有所长又彼此融合。具体解构平台架构来看,任何一类平台都基本由工业SaaS平台、工业PaaS 平台、工业数据分析与可视化平台、通用PaaS平台、云服务平台、连接与边缘计算平台这六类平台功能模块构成,不同模 块的配置与性能决定了各类型平台的功能特点与优势。

    工业互联网平台的应用 

    下游细分行业需求牵引五大类基础平台衍生发展

    工业领域中不同细分行业都有各自独特的知识领域和机理形成的行业门槛,每一个工业场景在不同的行业、不同企业中需 求差异较大,现阶段不存在一个普适性的工业互联网解决方案可以在各行业、企业、场景中通用。前文所述五大类型平台 也会因具体行业和客户需求的不同衍生出多种多样的子类型平台,因此锚定工业领域细分行业、理清行业脉络、了解业务 需求是划分工业互联网平台应用模式的理论基础,也是工业互联网解决方案提供商开展平台业务以及工业企业进行平台选型的关键。

    互联互通社区


    互联互通社区专注于IT互联网交流与学习,旨在打造最具价值的IT互联网智库中心,关注公众号:互联互通社区,每日获取最新报告并附带专题内容辅助学习。

    方案咨询、架构设计、数字化转型、中台建设、前沿技术培训与交流,合作请+微信:hulianhutongshequ

    展开全文
  • 经过我和我的团队一年的不懈努力,基本完成了公司信息安全体系的初步建设,我设计的安全体系架构分为六大块:安全开发体系、安全防御体系、数据安全体系、隐私合规体系、资产管理体系、安全管理体系,六大体系共同...

    前述

    经过我和我的团队一年的不懈努力,基本完成了公司信息安全体系的初步建设,我设计的安全体系架构分为六大块:安全开发体系、安全防御体系、数据安全体系、隐私合规体系、资产管理体系、安全管理体系,六大体系共同构成了完整的信息安全体系。

    完整的信息安全体系架构图:

    安全架构–5--我设计的企业安全体系架构

    六大体系建设总结:

    安全架构–6--企业安全开发体系建设总结
    安全架构–7--企业安全防御体系建设总结
    安全架构–8--企业数据安全体系建设总结
    安全架构–9--企业隐私合规体系建设总结
    安全架构–10–企业资产管理体系建设总结
    安全架构–11–企业安全管理体系建设总结

    一、安全开发体系介绍

    这里的安全开发体系即指安全开发生命周期(SDL)或通常意义上的应用安全,它是一个帮助开发人员构建更安全的软件、解决安全合规要求的同时降低开发成本的过程。 安全开发生命周期是侧重于软件开发过程的安全保证,旨在开发出安全的软件应用。

    在实践中,我将安全开发体系分为安全评审和方案设计安全编码自动风险识别人工渗透测试工程化管理SDL等五个方面,出于可落地和可执行的考量,与网络中常见的微软标准安全开发生命周期流程略有区别,其中标准SDL中的安全培训我将其放在了安全管理体系中,作为安全技术培训的一部分,安全应急我其放在了安全防御体系中,作为基础安全防护能力的一部分,就不在这里单列了!

    二、安全评审

    常规情况下,一个成熟的互联网公司在产品设计人员提出产品设计需求后,肯定是要走需求文案先期同步、需求评审、技术评审……等等一系列评审过后才会正式进入开发阶段的,如果没有这样一个流程,产品线将会很乱,非常不利于公司产品快速迭代更新。

    那么,安全所做的第一步,就是编写项目安全评审checklist,为什么要编写这玩楞呢?因为不同的安全人员的水平不同,同一个需求,小白觉得这个需求设计的没啥问题,但大神就能一眼看穿其中存在的缺陷。因此,需要一个统一的标准来进行需求安全评审就很有必要,那么这个checklist就有价值了。

    安全所要做的第二步,就是对接产品部,详细了解公司的产品流程是怎样的。比如下面这些内容:

    需求从何而来?是客服从用户反馈中收集的,还是公司内部反馈的,是看其他公司做了我们也想搞一个的,或者是各方都收集的。

    需求文案写好后是如何同步的?是按流程同步给相关人员,还是没有流程直接私发给相关人员,还是拉群同步给群友,或者是有一个需求文案池自己阅读。

    后续的流程是怎样的?是先进行需求评审,还是直接进行技术评审,或者是直接进行开发。

    安全所做的第三步,就是安全接入这一流程,不管这个流程是什么样子,产品人员写完的需求文案最终是要流入开发人员手中的,安全只需要在产品需求文案流入开发人员手中之前,对此执行完安全审计就可以了。

    在实践中,接入后流程后每一个产品需求文案都将同步给安全人员,接到产品需求文案后,安全人员应认真阅读产品需求文案,并判定是否需要参加现场需求评审。

    对于没有安全评审价值的需求,直接放过就可以了,比如它只是改了一个页面的颜色,或删除了某些没有用户使用功能等。

    对于逻辑模糊不清或从文案中看不出所以然的需求文案,安全人员应参加现场需求评审或与产品设计者详细了解其中逻辑,判断其中是否存在安全设计风险。

    对于需求设计中存在安全缺陷的,应及时与产品人员沟通并修改产品需求文案或做特殊说明,避免产品开发带入因设计不规范造成的安全缺陷,在产品开发完成后再修改这些缺陷,成本就很高昂了。

    安全所做的第四步,对产品设计人员所有提过的需求做评审记录,记录内容可以包括评审日期、需求评审点、评审结果、后续跟进等内容,也可以添加其他内容进去。做记录一方面是是为了存档,便于以后复盘、追责或审计的时候用到;另一方面,需求评审作为安全工作的一部分,汇报工作可以让领导看到你确实是在做了,不然空口无凭嘛。

    三、安全方案设计

    在实践中,方案设计这项工作并不是任何时候都有的一项内容,它一般出现在产品设计人员或开发人员对一个安全相关的需求不了解,需要安全人员来设计详细的实施方案时才存在。比如一个密钥要安全的存储在客户端中,产品设计人员可能对此技术并不了解,开发人员也对此技术不了解,那么这时候,就需要安全人员来撰写相关的需求文案了。

    同样的,由于不同的安全人员的水平不同,同一个安全需求设计出来的安全方案的实现逻辑也不同,但我们至少要保证安全方案它自身是安全的,对一个安全设计需求,小白设计出来后可能其安全方案本身又存在安全缺陷,这就类似于安全产品存在安全漏洞一样,属于比较尴尬的事情。

    那如何让一个安全方案它本身是安全的,这就需要一个统一的设计规范,按照这个统一设计规范,保证不同级别的安全人员设计出的安全方案它本身是安全的。因此,安全需要先撰写一个安全方案设计规范,而在此之后的安全方案设计,都应参考这个规范,以避免将安全缺陷设计进去。当然了,假如团队内有大神,直接让大神review一下也是可以的。

    四、安全编码

    这里安全编码旨在让开发写出更安全的代码,我们知道,开发人员编写代码这一步位于大多数技术漏洞的源头,安全意识薄弱的开发人员会让一个产品产生很多安全漏洞,比如不对参数做校验导致0元可买任何商品、分期付款可以无分期时间上限这种低级别缺陷。提高开发人员的安全编码意识,即可对技术漏洞的源头达到一定的治理效果,虽然实际中并不能完全根治。

    在实践中,安全所做的第一步,就是撰写安全编码规范,常见的一般就三类:web安全编码规范、APP安全编码规范、密码学安全编码规范(太重要了,把编码当成加密的、使用弱加密算法的、不加盐的等等)。具体文案撰写时可以参考业内知名的安全编码规范,也可以自己撰写。如果参考业内其他安全编码规范,一定要做适配性修改,使得其内容符合公司的开发架构,不然开发人员阅读起来会被疯狂吐槽。

    安全所做的第二步,就是推动开发人员阅读了,这一步实现起来比较困难,首先要得到技术总监的支持,一般领导们对与这种能降低产品风险的事情是不会排斥的,但是一线开发人员就比较排斥了。比较荣幸的是我司的安全部是独立出来的,拥有较高的话语权,所以相对比较容易。

    安全要做的第三步,就是对开发人员进行安全编码意识考试,同样的,要落地这一步仍然需要先得到技术总监的支持。其次对于考试试题,建议以单选题为主,同时题量不能太多,不然大家都遭不住。对于考试的频率,可以全部开发人员一年考一次,每个季度单独再对新入职的开发人员进行考试就可以了。对于考试的方式,怎么实现都可以,例如我司有人力资源部的考试平台,可以开展任何考试。

    以上均是我实践中的方式,仅作为参考。这样的考试虽然频率不算高,试题难度也不大,试题量也不多,遭受的阻力也小,但对开发人员的安全编码意识提升却有非常大的效果。在实践中,低级别弱智漏洞能几乎绝迹。

    安全要做的第四步,为了帮助开发人员在编码过程中不靠主观意识就能发现和避免一些安全缺陷,我们让所有开发人员都安装了陌陌开源的IDE开发辅助插件(immomo),该插件可在开发过程中就能识别到一些代码中的安全漏洞,使得开发人员能在编码过程中就避免将漏洞写入产品中。

    五、自动风险识别

    出于工作效率的考虑,对于安全缺陷首先选择的就是自动化方式识别,先解决自动化识别出的安全缺陷。对于自动化风险识别的方式,我在实践中主要使用威胁建模代码审计安全漏洞扫描其他安全扫描IAST自动化安全测试等,接下来逐一进行阐述。

    5.1、威胁建模

    理想情况下,威胁建模是架构师的事情,在一个项目进展到架构师进行架构设计时,架构师通过威胁建模来分析当前设计中存在的潜在安全缺陷,之后通过修改架构或执行其他处理措施,从而降低架构设计层的安全隐患。

    但在实践中,往往存在架构师没有精力执行威胁建模、或架构师不懂威胁建模、或公司没有架构师的情况。导致威胁建模这个行为并没有用在刀刃上,没有将其价值最大化。

    即便如此,威胁建模对于安全人员来说仍然存在一些价值,威胁建模一般是使用STRIDE方法来进行,即(绘制数据流图----分析威胁----评估风险----制定补救措施----落实补救措施)。总的来说,进行威胁建模可以分为以下几步:

    第一步,详细了解公司当前的设计架构,可以通过和开发负责人面谈,或阅读相关设计文档,或公司有架构师的话直接聊架构师,从而获得公司架构的详细架构图谱。获得到的架构图谱不一定是一张图,大概率是很多张图,因为很多模块其实是相对独立的。

    第二步,将获得到的架构图谱绘制到威胁建模工具中,如微软的Microsoft-Threat-Modeling-Tool(使用教程参考:Microsoft-Threat-Modeling-Tool威胁建模工具介绍),它就可以自动帮我们分析出其中的潜在风险了。一般初次威胁建模范围很大,因为要覆盖到公司所有资产,耗时也比较久,但在此之后,只需要对新增的业务进行威胁建模就可以了。

    第三步,对威胁建模工具自动分析出的潜在风险进行人工确认,这里的确认方式包括安全测试、逻辑推理等等。在实践中,这一步常常都能给我们带来惊喜,它可以cover一些我们平常不会注意到的风险点,在安全漏洞的产出上尽一点微薄之力。

    第四步,对于第三步确认的风险,可以将其作为安全缺陷提出来,然后推动其修复就可以了。

    实际上,我们这里只是将威胁建模用成一个漏洞发现的工具了,属于事后威胁建模,并不符合事前威胁建模的思想。这样做有两个问题,第一个是不能cover架构层的设计缺陷,同时产品一旦开发完成,架构层的安全问题基本就没法改了;第二个问题是隐蔽漏洞发现时间滞后,造成漏洞修复成本升高,即本来最初改改设计就能避免的问题,现在要大动干戈才能改掉。但即便如此,威胁建模对安全人员来说还是有一些价值的。

    最后一步,即编写安全威胁建模规范,因为不同的人对同一个事情有不同的做法,不同的做法就会产生不同的结果,这将会导致同一个事情结果出现参差不齐的情况。因此,如果大家都按照安全威胁建模规范来做,就能很好的解决结果参差不齐的问题了。

    5.2、代码审计

    代码审计是一种重要的漏洞发现方式,同时这在任何公司都属于必不可少的工作,因为它能发现黑盒测试发现不了的漏洞,从而更全面的来把控应用安全。

    黑盒测试不管是扫描器还是人工,都会因为种种原因遗漏掉各种各样的点,比如if-else多层嵌套,你可能只测试了if发现没问题,但在其中的某个else里面就能触发漏洞,因为你看不到背后的全量逻辑,所以也会测试不全。而白盒测试则能直接看到其中的逻辑,从而发现更深层次的问题。

    在实践中,甲方公司几乎不存在纯人工审计一个项目代码的情况,纯人工审计一个项目代码太耗时了。自动化代码审计的核心是代码审计引擎,而它是一个比较考验安全人员开发能力的事情,因为不管是自研还是开源项目二次开发,都需要写代码。代码审计工具具体原理或细节我们就不再说了。

    拥有代码审计引擎后,将其接入项目发布系统,在项目代码发布时执行白盒扫描。如果公司没有项目发布系统,可以接入代码仓库平台,监测代码提交行为,在接到代码提交时进行白盒扫描。白盒扫描完成后,人工对扫描结果进行二次确认,对于确实存在的安全缺陷再推动修复即可。

    这里有一个问题,理想情况下代码审计是项目发布到测试环境时执行的,发现漏洞后及时修复,保证项目正式上线时不带着已知漏洞上线。但在实践中,即便是目前的商业代码审计产品误报率也高的惊人,更别说开源的或自己搞的那些了,再加上测试环境其实是随时都有可能发布的,一个项目不知道要在测试环境发布几十遍,因此人工复审确认这一环节就没法开展了。

    因此在实践中,只能将其挂在预发布系统或线上系统,这样发布次数少,白盒扫描次数就少,人工复审确认能忙得过来,对于代码审计中发现的漏洞,只能之后再排期修复,一般能在下次发布时修复掉就很不错了。

    5.3、安全漏洞扫描

    安全黑盒扫描也是一种重要的漏洞发现方式,安全漏洞扫描一般能起到两个作用,第一是它可以发现一些人发现不到的问题;第二是用于模拟外部攻击,因为在实际中外部攻击除了定向攻击外,大多攻击者其实都是没有目标的拿扫描器一把梭,在扫描到某公司的系统有安全漏洞的时候,再对该系统进行人工渗透。因此,模拟外部攻击者用扫描器扫描系统来发现漏洞,是一件很有必要的工作。

    安全漏洞扫描可以分为web安全漏洞扫描、主机安全漏洞扫描、APP安全漏洞扫描、Docker安全漏洞扫描、公网开放端口扫描、组件漏洞扫描。其中常见的扫描器如下:

    web漏洞扫描器:AWVS、Appscan、Arachni
    主机漏洞扫描:Nessus
    APP安全漏洞扫描:MobSF
    Docker漏洞扫描:Anchore
    公网开放端口扫描:Nmap
    组件漏洞扫描:BlackDuck

    扫描的频率可以根据实际情况自定义,扫描完成后,进行人工确认,将确认的漏洞推动修复就可以了。同时,还应当对每一次扫描做记录,以保留工作成果。

    5.4、其他安全扫描

    在实践中,我将这里分为弱口令扫描和敏感信息泄露扫描。

    弱口令扫描主要是使用弱口令字典,扫描公司的一些信息资产口令情况,比如内网各种系统、公司邮箱等等,对于使用弱口令的员工督促改正。弱口令字典除了常见弱口令外,还应包含系统默认密码,需要注意的是这里的默认密码在密码复杂度规则上可能不一定是弱口令,但只要是大家都统一的默认密码,就按弱口令处理。

    敏感信息泄露扫描主要是扫描后端接口返回的用户敏感信息,包括手机号、身份证号、银行卡号、订单号等,这些信息一旦被外部黑客遍历获取,用户就会身处风险之中,非常容易遭受电信诈骗。

    敏感信息泄露扫描一般分四步。第一步通过正则匹配的方式扫描后端接口返回的敏感信息,第二步确认返回的敏感信息是否是真实的敏感信息,比如有些匹配到的可能仅仅是11位的字符串并不是手机号。第三步,若接口返回的是真实的敏感信息,测试该接口是否存在遍历漏洞,存在漏洞的要及时修复。第四步,判断返回的敏感信息是否需要脱敏,若非业务必须明文展示则一律执行脱敏。

    在实践中,敏感信息泄露扫描可以使用RASP来实现,开源的工具如百度的OpenRASP,将其部署到测试环境后,它就能监控测试人员在项目功能测试中所产生的流量,然后就能监测到哪些接口返回了敏感信息,之后对这些监测到的敏感信息进行处理即可。

    5.5、IAST自动化安全测试

    IAST自动化安全测试不同于黑盒漏洞扫描,它的功能非常强大,能够结合应用内部hook点信息精确的检测漏洞,几乎没有误报。传统黑盒扫描器依赖于页面响应检测漏洞,不但需要发送大量的请求,还有误报的可能。对于SSRF、文件上传等漏洞,在页面没有回显、主机没有外网权限的情况下,还可能会漏报。IAST自动化安全测试就能很好的解决上述问题。

    在实践中,推荐的开源工具还是百度的OpenRASP-IAST,将其部署到测试环境后,它就能监控测试人员在项目功能测试中所产生的流量,并对产生的请求流量插入预定的Payload后发送,经过一系列逻辑验证,就能准确无误的判断漏洞了。

    最后,由于开源的OpenRASP-IAST支持的插件很少,为了发现更多的安全漏洞,我们可以对其进行二次开发,二次开发主要是开发对应的漏洞扫描插件,而对于漏洞扫描插件以外的其他平台级逻辑,开源代码已经写的很好了,一般情况下没必要去动,除非自己有特殊需求。

    结合上一步所论述的RASP扫描敏感信息泄露,它的部署可以参考:基于Springboot的Docker部署OpenRASP-IAST,它的二次开发可以参考:OpenRasp-IAST二次开发说明

    六、人工渗透测试

    在处理完自动化发现的安全缺陷之后,剩下的就是无法靠自动化方式发现的安全漏洞了,这种漏洞需要安全人员手动去发现,即人工渗透测试。

    渗透测试是整个信息安全的重要分支之一,不管是市场需求量还是从业人数都位居信息安全分支第一,因此有很多安全从业者专职从事渗透测试工作,渗透测试也是安全人员所具备的基本技能,但要做到大神级别难度比较大。

    对于人工渗透测试,我在实践中主要分为测试准备安全测试规范漏洞定级发布实时安全/合规测试季度全网渗透测试第三方渗透测试等几块,接下来逐一进行阐述。

    6.1、测试准备

    在进行安全测试前,我们需要进行一系列的准备工作,只有做好准备工作,安全渗透测试才能按期望开展,在实践中,我将准备工作分为了两块:公司所有项目梳理测试账号收集规整

    公司所有项目梳理这个我会在资产管理体系一文中详细论述,此处就不再赘述了。梳理完信息资产后,我们就知道了我们有哪些域名、有哪些URL、有哪些IP、开放了哪些端口等等,在接下来的安全渗透过程中,这些资产就是我们要测试的目标,同时,完整的资产数据能让我们在安全渗透测试中有更高的效率,从而达到更好的效果。

    当我们梳理完公司的资产后,会发现很多资产的访问有权限验证的,很多站点也需要账号口令登录……,并且很多站点没有注册窗口,这时如果有一个或多个账号是不是就很方便了呢?所以对所有资产的测试账号梳理规整就是一个很有必要的工作,梳理规整好资产的测试账号后,不论是自己实施安全渗透测试,抑或是新来的同学实施安全渗透测试,都是非常方便的。在实践中,梳理测试账号可以通过测试部门来进行,测试部门一定是有所有资产的测试账号的,否则他们无法实施测试,我们只需要将这些测试账号要过来就可以了。

    6.2、安全测试规范

    由于不同的安全人员水平不同,如果给到一个站点不做任何要求进行安全测试,水平高的安全人员会测试的更全面,发现更多的问题,水平低的安全人员就相反了,可能只是看到一个id想着遍历一下,看到一个查询想着注入一下,不会想到更多的安全关注点。

    解决这个问题的办法是编写安全测试规范,形成一个安全测试checklist,所有拿到一个资产进行安全测试的人员,都按照这个checklist来逐项进行安全测试,就能基本上统一测试质量了。安全测试规范包括web安全测试规范Android应用安全测试规范iOS应用安全测试规范技术合规测试规范。其中前三个大家很好理解,这里就不多说了,技术合规测试规范我单独阐述一下。

    技术合规测试主要的测试内容是产品的合规性,即我们的产品是否符合法律法规规范。我们知道,合规的很多内容其实是技术来支撑的,比如收集哪些用户数据、这些数据是怎么传输的、是怎么加密的、权限索取是怎样的……等等,因此,它并不是一个单纯的非技术方向。编写完技术合规测试规范后,所有拿到一个资产进行安全测试的人员,都按照这个checklist来逐项进行技术合规测试,就能基本上统一测试质量了。

    6.3、漏洞定级

    在我们测试出一个漏洞后,这个漏洞是算高危呢还是算低危呢?这个问题在不同人看来有不同的答案,举个例子,安全圈最经典的XSS漏洞,安全人员觉得它是高危,开发人员说这不就弹了个窗吗?

    因此,一个漏洞定级标准很重要,对于公司内部来说,你把低危漏洞主观定级成高危漏洞,开发人员不干了要和你扯皮,因为这影响他的绩效了。对于公司外部来说,你把高危漏洞主观定级成低危漏洞,SRC的大佬们不干了后果很严重。所以说漏洞定级一定不能主观随意定级。而撰写一个漏洞定级标准并将它公开,以后每个漏洞定级时都按这个标准进行,漏洞定级就有了信服力。

    当然,一个漏洞不光是提出来就完事了,它还需要修复。不同的漏洞修复的时效也是不一样的,紧急漏洞需要马上修复,而低危漏洞可以拖延很久甚至不修复。建议将不同漏洞的修复时效也列入漏洞定级标准,从而在发现一个漏洞后,按照漏洞定级标准现进行定级,再按照漏洞修复时效标准进行修复排期。

    在实践中,如果一开始就落地这一制度会非常困难。通常情况下,制度推行需要有一定的文化基础,当安全文化逐渐深入员工心时,不光是这个制度落地起来很容易,其他安全制度落地起来也很容易。因此,对安全管理者来说,培养公司的安全文化是一个长期且艰难的事情。在过去一年的时间里,我们也只完成了对公司部分部门的安全文化培养,如技术、法务、行政、人事、宣传、财务等几个安全常合作部门,这些部门的员工现在非常重视安全,在遇到风吹草动时都会第一时间寻找安全支持。而其他一些和安全不常合作的部门,就没有见过他们的身影。感觉这里扯跑题了……

    6.4、发布实时安全/合规测试

    在规范化的安全生命周期中,一个产品在初步完成编码后,是需要经过测试人员测试并测试通过之后才能正式上线的,此处的测试人员即包括安全测试人员。那么,每一个需求在提测的时候,安全都应该介入。

    在实践中,一般情况下,一个需求从开发流向测试,一定是有一个规范化的流程的,可能是钉钉或企业微信的一个流程审批,也可能是一个工单系统的工单,但不管怎样,这个流程是存在的。安全的工作就是先找到这个流程,并让管理员将安全人员添加到这个流程中,安全就算接入了。在此之后的每一个需求提测都会自动同步给安全人员,安全人员与测试人员一道,共同对这个需求执行测试。在测试中,安全人员重点关注的就是安全漏洞与技术合规问题。

    最后,在测试完成后,要撰写测试报告或测试记录,主要是为了留档,一来这是工作成果,证明这个需求自己测试过了,有产出。二来在日后出现问题追责的时候,是谁测试的需求谁就背锅,这样对背锅人或对大家都是公平的。

    6.5、季度全网渗透测试

    虽然上面的发布实时安全测试能让我们知道每一个发上线的需求都是经过安全评估的,但是那个只是对一个个的小需求点进行的,在一个个小需求点的之间关联处,我们可能会有遗漏。那么定期做一个全局的安全渗透测试就很有必要了。

    在实践中,我们是一个季度执行一次全网资产的渗透测试,测试的目标就是梳理出来的所有信息资产,在每次渗透测试中,我们都能发现一些重要的安全漏洞,证明定期执行全网的安全渗透测试是正确的。

    6.6、第三方渗透测试

    一般情况下,如果公司自己有安全人员,是不需要第三方来进行渗透测试的,因为第三方安全人员的水平不一定比自己安全人员的水平高,尤其是国内,第三方派驻的安全人员很多都是初出茅庐的应届生。

    那么,什么情况下需要第三方来进行渗透测试呢?主要有两个情景,第一个是公司自己没有安全人员,这种情况就不说了。另一个情景是公司需要拉客户、需要投标等等,而客户会进行信息安全审核,一般客户审核的主要方式就是要求提供第三方安全机构出具的渗透测试报告,因为你自己不能证明你自己安全,不管你多牛逼,就类似于让你证明你是你这样,存在逻辑悖论。在此种情况下,即使我们有安全人员,我们仍然需要第三方来进行渗透测试,甚至说第三方派驻的渗透人员水平越低越好。

    七、工程化管理SDL

    为什么要工程化?首先你经过日积月累的漏洞发现与挖掘,搞出了无数漏洞,那这些漏洞你怎么记录保存?哪些修复了?哪些开发说要修复但还没修复完?哪些开发拒绝修复了?……等等,如果这些工作单纯靠Excel来搞,在数据量稍微变大的时候,就会出现无法处理的问题。

    这就是为什么要搞工程化管理SDL,搭建一个安全平台,这个安全平台可以有很多功能,可以把各种扫描器配置集成进去,我们例行扫描的时候打开这个平台就可以部署扫描了,也可以把代码审计结果展示集成进去,代码扫描引擎扫描完成后,我们人工确认审计时打开这个平台就可以了,也可以把防火墙配置集成进去、把知识库集成进去、把病毒扫描集成进去……。

    当然,这些功能它都可以没有,我们可以使用各个独立系统平台,但它一定要有漏洞管理职能。拥有漏洞管理职能后,我们所有发现的安全漏洞都可以在平台上录入,然后每个漏洞标注对应的开发人员,每个漏洞都拥有不同的状态,如已接受、已修复、已拒绝、已验证、已关闭……等。在开发人员收到提醒后,就会去关注这个漏洞,并点击跟进漏洞状态。我们工程化SDL就实施起来了。这样就比使用Excel记录漏洞强十万八千倍了。

    目前较好的开源的安全平台是宜信安全部出品的「洞察」:https://cesrc-creditease.github.io/。如果安全团队没有能力自己开发可以直接使用,如果有能力自己开发建议自己从头开发或二次开发!

    八、总结

    我以上所论述的安全开发体系(安全开发生命周期)其实和理论上的安全开发生命周期是略有出入的,整体上和理论方案也存在一些差距,但从论述中大家也会发现,只有基于实际的、适合自己的、能落地的方案,才是最好的方案。

    展开全文
  • 现状:随着各个政府部门建立符合各自特点的企业架构框架并逐步实现各自企业架构,例如财政部(DOT)的企业架构框架TEAF(Treasury Enterprise Architecture Framework),但是在当时这些企业架构的范围还是局限在...


    现状:随着各个政府部门建立符合各自特点的企业架构框架并逐步实现各自企业架构,例如财政部(DOT)的企业架构框架TEAF(Treasury Enterprise Architecture Framework),但是在当时这些企业架构的范围还是局限在各自的部门范围内。

    问题:而从美国联邦政府这一整体角度来看,诸如组织目标与信息系统的相互适配以及信息系统和资源的冗余浪费等方面的问题并没有得到完美的解决。无论从组织架构、组织职能,还是从其服务对象的角度来审视,美国联邦政府都是极为复杂的组织系统,因而如何站在美国联邦政府这一全局角度来考虑企业架构所面对的问题是极具挑战的。

    解决方法:为了解决这一问题,一个从联邦政府这一整体性角度出发的企业架构框架需要被开发出来,并以此为基础建立和维护适合联邦政府自身的企业架构,从而能够促进各个政府部门之间的信息整合和共享,提高整个联邦政府在信息化投资方面的效率。这一思想在付诸实行后历经多年演进最终结晶为联邦企业架构FEA

    发展历程

    • 1996年颁布的Clinger-Cohen法案(亦称为信息技术管理改革法案),该法案的主旨是美国政府指导其下属的各联邦政府机构通过建立综合的办法来管理信息技术的引入、使用和处置等,并且该法案要求各政府机构的CIO负责开发、维护和帮助一个合理的和集成的IT架构(ITA)的实施。
    • 在此法案的推动之下,CIO委员会于1999年9月发布了FEAF(Federal Enterprise Architecture Framework),用于指导联邦政府各部门创建企业架构。
    • 随后,联邦企业架构创建和管理工作被移交给了美国的管理和预算办公室(OMB),而OMB也随即成立了联邦企业架构程序管理办公室(PMO)来专门开发联邦企业架构(FEA),并于2002年2月发布了第一版的FEA。

    一、FEAF

    FEAF是一个以架构建设过程为重点的企业架构框架理论,并且对于企业架构内容也有着一定程度的归纳(虽然标准化程度并不高),同时最重要的是FEAF所提出的片段架构(Segement Architecture) 的概念对于以后的FEA的影响是非常大的,并且为日后大型企业创建企业架构指明了一条道路。随后,在2001年CIO委员会又发布了联邦企业架构实施指南( 《A practical guide to Federal Enterprise Architecture》)。在这篇指南中,CIO委员会介绍了联邦企业架构建设的具体流程和企业架构框架(例如FEAF等)如何在企业架构建设过程中发挥作用。并且在此指南中,企业的生命周期也被定义成由企业架构过程与其他几个企业管理过程相互结合并互相作用的过程,从而体现了企业架构在一个组织中的重要意义。

    1、FEAF的出现

    联邦企业架构所管理的信息资源分布于各个机构之中,所以FEAF必须能够被各个机构方便地采用,并且不能影响到各个机构已有的企业架构,从而保护各机构为各自企业架构所付出的投资和努力。为了达到上述目标,CIO委员会制定了三种方法:

    • 传统方法——首先在时间和资金上申请大量的初始投资,然后开发一个能够对架构进行描述的框架,并使用此框架对当前架构以及目标架构进行描述。在此之后,通过设计、开发以及系统采购等方式实现企业架构的演进。
    • 片段方法——建立一个结构化的企业架构框架,并对中的架构片段进行增量式开发,其中每个片段被限定在一个特定的业务领域内。
    • 维持现状

    CIO委员会采用了片段方法,即将联邦企业架构看成若干片段,每个片段对应某个特定的业务领域,针对每个业务领域进行架构描述,能够大大降低系统的复杂度,但是问题的总体复杂度依然守恒。。

    • 在“片段方法”中,首先从各个业务领域的视角开始对整个联邦政府在逻辑上进行分解,然后采用传统企业架构建设方法对每个分解出来的片段进行建设。也正是由于这种“片段方法”,联邦企业架构的建设过程也成为了一个基于各个业务领域的增量式的演进过程,而且由于建设单元被细化,联邦企业架构针对外界变化的反应能力得到了增强。
    • 不过笔者认为,分段方法并不能减少问题的总体复杂度而是使复杂的问题简单化,从而使复杂问题的解决成为可能,但是问题的总体复杂度依然守恒。
    • 原来整体的一块被分解为相对琐碎的若干片段,虽然就每个片段来说实现难度下降了,但由于这些片段之间的相互联系性,维持这些片段一致性发展就会成为新的问题点,如果只注重于某个片段的发展而忽视片段之间的协调性,那么类似于之前所说的“技术驱动”路线的弊端还会显现,甚至更为严重,因而一个全局的针对联邦政府企业架构的治理、共享和评测机制也需要建立起来,并施以同样的重视度,我想这就是在后面将提到的联邦过渡框架(FTF)、企业架构评估框架(EAAF)和企业架构实施指南等框架和导则存在的原因之一。但不论怎么说,FEAF的这种“片段方法”可以说是联邦企业架构的主要特色,此后OMB建立的FEA的很多内容实际上也是该方法的延伸和具体化。

    2、FEAF构成

    (1)Level 1

    在联邦企业架构的建立方面,FEAF首先是一种组织机制,被用来管理企业架构描述的开发和维护,而在将企业架构付诸实施方面,FEAF还提供了一种结构,用于组织联邦政府资源以及描述和管理联邦企业架构的相关行为。

    在联邦企业架构框架的设计过程中,CIO委员会将企业架构的开发和维护过程以模型的形式进行表述,并且他们还将这一模型分成八个相互结合并互相作用的子部件,八种部件组合在一起就形成了FEAF开发和维护企业架构的模型

    在这里插入图片描述

    • 架构驱动力(Architecture Drivers):架构驱动力是促使架构产生和演进的原动力,一般来说包含两种类型的来自于外界并对企业架构的变革产生刺激的推动力:业务驱动力和设计驱动力

      • 业务驱动力:代表联邦政府的核心业务需求,例如公众访问需求、Clinger-Cohen法案对架构开发的要求、其他新法案要求电子化访问或者电子签名的使用,以及关于政府行为的各种创新。
      • 设计驱动力:代表实现联邦政府业务需求的各种革新方法,包括新的软件或硬件技术,以及新的针对软硬件系统的部署方式等。
    • 战略方向(Strategic Direction):战略方向指导者目标架构的开发,包括愿景、原则和目标。

    • 当前架构(Current Architecture):通过描述企业架构的当前状态,展示了企业当前的业务能力和技术能力。它包括企业当前的业务架构 和 设计架构 两个部分。

      • 当前架构的业务层面:代表了在当前技术能力支持下企业目前的业务需求。
      • 当前架构的设计层面:代表了用于实现当前业务需求的数据、应用和技术方面的内容。
    • 目标架构(Target Architecture):描述了企业架构将要达到的目标状态,展示了企业未来的业务和技术能力。它包括企业的目标业务架构和设计架构两个部分。

      • 目标架构的业务层面:代表了在未来技术能力支持下的企业未来的业务需求。
      • 目标架构的设计层面:代表了用于支持未来业务需求的数据、应用和技术方面的内容。
    • 过渡过程(Transitional Process):用于支持从当前架构到目标架构的迁移。联邦政府的重要过渡过程包括了资本的IT投资规划(capital IT investment planning)、迁移规划(migration planning)、配置管理(configuration management)以及工程变更控制(engineering change control)。

    • 架构片段(Architectural Segments):如前所述,整个企业架构被分为若干部分,而每一部分对应一个架构片段。

    • 架构模型(Architectural Models):定义了用于对各个架构片段进行描述的业务和设计模型。

      • 业务模型:为在架构驱动力推动下出现的各种业务需求进行建模。
      • 设计模型:为支持业务需求而必须的数据、应用和技术进行建模。
    • 标准(Standards):代表架构开发和维护过程中所涉及的所有标准(有些可能是强制性的要求)、导则和最佳实践。

    结论

    • 在FEAF的世界里企业架构的出现和变更都是在一系列的架构驱动力的刺激之下来进行的。由于外界的刺激以及环境的变化总是绝对的,因而FEAF是站在一个适应变化的角度上阐述企业架构的开发和维护过程,并将其定义为一个循环往复的过程,这是非常客观的。
    • 在架构驱动力的推动之下,企业的战略方向也会跟随演进,并且目标架构的制定是需要与企业的战略方向相一致的。由此可见,FEAF将外界推动、企业战略结合了起来,并将企业战略细化为更加具体的目标架构描述,从而使企业战略即符合现实需要,又在整个组织范围内得到了一致认同。
    • 当前架构和目标架构需要使用相同的方式和语言(架构模型)进行描述,从而可以分析出现实和目标的差距,并将这些差距具体化为一系列的过渡过程,从而指导企业和企业架构的同步演进。并且在演进过程中,所需要遵循的各项标准,以及所采用的导则和最佳实践等工具也被明确了出来,从而达成在实施过程中的无障碍沟通性和标准性。
    • 架构片段的划分大大降低了开发联邦企业架构的复杂性,并且也可以按照增量的方式对联邦企业架构进行循序渐进的开发和维护。
    • 采用相同的架构模型对各个架构片段进行描述可以提高各个架构片段开发的标准性,并且不同架构片段之间的沟通也更加通畅,例如通用性架构片段对各个具体业务领域架构片段的支持和融入将变得非常容易。

    (2)Level 2

    在这里插入图片描述
    细化中,组成FEAF模型的各个组件作了如下的扩展:

    • 在上个层次中的当前设计架构被细化为当前的数据架构、应用架构以及技术架构
      • 数据架构:定义了用来支持业务各种数据,以及他们之间的关系。
      • 应用架构:定义了用来管理数据并支持业务功能的各个应用。
      • 技术架构:定义了用于为管理数据和支持业务功能的各个应用提供支持的各种技术。
    • 与当前设计架构的细化类似,目标设计架构也被细化为数据架构、应用架构以及技术架构
    • 在上个层次中的架构设计模型被细化为数据模型、应用模型和技术模型,他们分别为数据、应用和技术架构的描述提供了更加详细的描述方式。
    • 在这个层次中每个架构片段对应联邦政府中的一个主要业务领域。一个架构片段的选择和定义需要与框架以及加载到联邦企业架构资源库中的模型、架构信息相符合。一个架构片段也可以看作为一个事件驱动的流程,它贯穿联邦组织机构,并拥有足以使其被纳入到联邦企业架构中的投资回报率(ROI,return-on-investment)。
    • 过渡过程的内容也被进一步细化和明确,包括且不限于如下几个过程:
      • 资金IT投资规划和决策制定(Capital IT Investment Planning and Decision Making):根据筹资预测、投资回报率和成本效益等判定条件来评估投资是否值得为其编制预算。
      • 投资管理审查(Investment Management Review):为投资审查决策过程提供架构信息。
      • 片段协调(Segment Coordination):协调片段架构与联邦企业架构的整合,同时配置管理和工程变更控制过程也必须到位。
      • 市场调研(Market Research):执行一个周期性的市场搜索和分析,用以寻找先进的且具有潜在收益的技术。
      • 资产管理(Asset Management):管理所有基于联邦企业架构的基础设施资产。
      • 采购实践(Procurement Practices):使采购活动与架构以及其他过渡过程相同步。
      • 架构治理(Architecture Governance):协调架构建设和维护过程中的种种活动,从而避免工作的混乱、误解和返工。
    • 标准的内容进一步细化和明确,包括且不限于如下几种标准:
      • 安全标准(Security Standards):包括所有方面都必须遵循的各种安全准则。这不仅包括信息技术方面的各种安全方针,还包括在业务领域也需要遵循的各种安全准则。
      • 数据标准(Data Standard):用于描述数据、元数据以及他们之间关系的各项准则。
      • 应用标准(Applications Standards):应用于各种应用软件上的各项原则和标准。
      • 技术标准(Technology Standards):应用于各种操作系统、平台以及硬件系统等信息技术基础设施上的各项标准。

    (3)Level 3——架构模型细化

    FEAF在最后一个粒度层次的细化中仅是针对架构模型的内容来进行的,通过借鉴Zachman框架的内容将架构模型的内容进一步细分如下:

    视角数据架构 应用架构 技术架构
    规划者
    (目标和范围)
    业务对象列表 业务流程列表业务地点列表 业务架构模型
    拥有者
    (企业模型)
    语义模型 业务流程模型业务物流系统
    设计师
    (信息系统模型)
    逻辑数据模型 应用架构系统空间部署架构 设计架构模型
    建造者
    (技术模型)
    物理数据模型 系统设计技术架构
    分包商
    (详细规范说明)
    数据定义、字典 执行方案网络架构
    数据架构模型 应用架构模型技术架构模型

    分析:FEAF只采用了Zachman框架中的前三列的内容,将在第三个层次中细化出来的业务架构模型、数据架构模型、应用架构模型和技术架构模型分别按照不同参与者的视角进行了更加详细定义。在上面的架构模型定义表格中:

    • 业务架构模型被进一步细化,包括了规划者视角下的业务对象列表、业务流程列表、业务地点列表,以及拥有者视角下的语义模型、业务流程模型和业务物流系统。
    • 数据架构模型的内容被细化为逻辑数据模型、物理数据模型,以及数据定义和字典。
    • 应用架构模型的内容被细化为应用架构、系统设计和执行方案。
    • 技术架构模型的内容被细化为系统空间部署架构、技术架构和网络架构。

    小结

    • 作为用于描述组织核心任务的业务架构模型,其主要关注者就是承担规划者和业务拥有者角色各个干系人,他们所关注的范围包含了数据、应用和技术等所有方面,只不过相对于下面用于支持业务的参与者来说,他们对于这三方面的描述角度是站在业务相关的立场上的,因而业务架构模型与从属于设计架构模型的数据、应用和技术架构模型并不是一个平行的层次关系,而是不同角色的干系人针对相同事物在不同角度的所看到的不同视图。
    • 相对于业务架构模型与设计架构模型这两者根据视角的不同而采取的水平划分方法,对于设计架构模型的细化采取的就是垂直划分了,即从数据、应用和技术三个方面对设计架构模型进行划分,并且在每个划分出来的模型区域中又根据设计师、建造者以及分包商所具备的视角分别制定更加详细的模型制品。

    (4)Level 4——业务架构模型细化(EAP方法)

    FEAF还通过借鉴企业架构规划技术(EAP,Enterprise Architecture Planning)为业务架构模型的建立提供了方法。

    • 企业架构规划(EAP):指为利用信息支持业务而定义架构的过程,以及用来实现这些架构的规划。
    • EAP可以看作是关于数据、应用和技术的一张高层次(业务和管理视角)蓝图,并借此保证他们之间的协调发展(alignment)。

    具体到FEAF,EAP为上面的FEAF架构模型中的业务架构模型(第一和第二行内容)提供了一套实现方法。在CIO委员会的FEAF文档中,EAP的作用表现如下:
    在这里插入图片描述

    EAP在架构模型中的作用:与Zachman框架将关注点放在架构内容描述上不一样,EAP所关心的是对信息技术与业务的相互校准过程进行规划和管理,因而EAP所采用的是不同于具体设计和实现的高层次的视角。

    二、企业架构实施指南

    1、企业生命周期

    如何使用架构框架理论为联邦政府以及各个机构建设企业架构呢?
    企业架构的建设、维护和使用又该如何融入到各个机构中?

    面对这些问题,2001年CIO委员会发布了《A practical guide to Federal Enterprise Architecture》,用于为各个机构提供一份关于建设和维护企业架构的详细指南,并且该指南还介绍了如何将企业架构融入到各机构的生命周期中,从而促进机构的良性发展。

    在这里插入图片描述

    企业的生命周期:在企业的存续和发展过程中,企业需要不断的吸收新的技术、业务流程等新鲜事物,并将其转换为能够促进企业前进的各项能力,而这样一个循环往复的过程。

    • 三个核心过程:企业架构过程(EA Process)是一个独立运行的迭代过程,而除此之外一个企业的良性发展还需要企业工程和项目管理(Enterprise Engineering and Program Management)和资金规划和投资控制过程(CPIC,Capital Planning and Investment Control),并通过他们之间的协调合作来达成。
      • 企业架构过程:用于企业架构的建设、维护和使用的指导过程;
      • 企业工程和项目管理:用于负责针对企业各个实施或采购项目的管理;
      • 资金规划和投资控制过程:企业关于投资的选择、控制和评估方面的重要工具。
    • 三个核心过程的关系
      • 这三个过程并不是相互隔绝的,企业架构过程的实施最终要落实到一个个具体实施项目之上,而确保这些项目能按时按质的实现就需要企业工程和项目管理以及资金规划和投资控制过程方面的强力支持。
      • 此外,企业架构过程所产生的企业架构内容也为这两个核心过程提供了准确可靠信息基础,并且企业架构过程还可以保证这些信息能够快速反映和消化外界环境的变化。
    • 其他支持性过程:企业生命周期的良性发展还需要系统生命周期、人力资源以及安全管理这三个支持性的管理过程的帮助。这三个支持性过程具有普适性,他们不像上面三个核心过程那样直接作用于企业的具体任务,但是他们确实是支持各个核心过程并保证企业任务能够顺利进行的重要保障。

    2、企业架构过程

    在这里插入图片描述

    企业架构过程

    企业架构过程:以采用步进的方式,将开发、维护与应用描述成一个 循环往复的迭代过程。

    • 与架构开发方法(ADM)同异
      • :都采用了循环迭代的方式,且大部分的步骤都有着相似的意义和内容;
      • :在步骤的具体描述方面,CIO委员会只是针对此过程中的每个步骤进行了较为详尽的说明,而TOGAF的ADM的描述方式则更具标准性,除了各步骤的说明之外还包括了每个步骤的目标、输入、输出以及进一步细化的分支步骤。
    • 组成:九个部分,除了最后的“控制与监督(Control and Oversight)”之外,其余八个部分都是以前后衔接的方式来布置。即,按照箭头所指方向前面步骤的完成为后面步骤的启动奠定基础,并且这八个步骤都处于“控制与监督”这一过程的控制之下。
    • 顺序步骤
      • 取得上层主管的认同和支持(Obtain Executive Buy-In and Support)
      • 建立管理结构和控制(Establish Management Structure and Control)
      • 定义架构过程和方法(Define an Architecture Process and Approach)
      • 开发基线企业架构(Develop Baseline Enterprise Architecture)
      • 开发目标企业架构(Develop Target Enterprise Architecture)
      • 开发序列计划(Develop the Sequencing Plan)
      • 使用企业架构(Use the Enterprise Architecture)
      • 维护企业架构(Maintain the Enterprise Architecture)
      • 控制与监督(Control and Oversight)

    (1)取得上层主管的认同和支持

    定位:取得所有上层主管的认同和支持是一个企业架构过程建设的起始,也是决定一个企业架构是否能够被成功建立的先决条件

    • 原因:企业架构涉及全组织的信息资产,其开发和维护需要整个组织提供持续的资源支持,因而得到组织全体尤其是高层的支持是非常重要的。
    • 核心内容CIO和主架构师(主要推动和执行核心)需要在企业的不同层面分别获得相关人员的支持和认同,而其中最主要的是获得管理层对架构过程所必需的资源支持的承诺、各业务负责人和领域专家在业务角度对企业架构目标的认知以及在预算及其他约束方面的分析

    具体步骤

    • 首先CIO需要创建市场策略,并与企业最高领导进行交流,使其了解企业架构开发在战术和战略上的价值。在取得最高领导的认同之后,CIO需要取得他对企业架构支持的承诺,为获得必要的资源支持打下基础。同时,CIO需要与最高领导在高层管理团队中选择主架构师。然后,CIO还要和最高领导一起基于各项用于治理企业架构的开发、实施和维护的架构原则创建企业架构方针(Architecture Policy)。
    • 接下来,CIO需要起草市场方案来进一步强化企业架构的价值,并在高层管理团队中获得认可,并得到他们以及他们下属组织和资源会积极投入的承诺。主架构师需要起草一份更为具体的企业架构计划,从而获得企业中包括业务负责人和领域专家在内的各个业务单元的支持,并且还需要他们从业务策略角度,结合预算以及其他约束条件对架构的业务层以及相关序列计划的合理性进行分析。
    • 最后,CIO和主架构师需要举行一个企业架构项目的启动会议,用于阐述企业架构的目标、里程碑、流程、产品,以及企业架构过程与系统生命周期活动、资金规划和投资控制过程等相关过程之间的关系,从而在业务的中层和下层的参与人员中获得共识和支持。

    (2)建立管理结构和控制

    在这里插入图片描述

    企业架构管理组织结构概念图

    建立用于管理、控制和监督企业架构过程中各项活动的组织结构各种角色的责任以及他们之间的责任和沟通关系需要被清晰地定义出来,而且该组织架构的构成应该有助于其中的各个角色在企业架构中职能的发挥。

    • 注意:由于企业规模的差别以及业务复杂度等方面的不同,企业架构管理组织中角色的构成以及角色的职能也是具有不小的差别。
      • 在指南中,该企业架构管理组织包括了企业架构执行委员会(EAESC,EA Executive Steering Committee)、技术审查委员会(Technical Review Committee)以及企业架构项目管理办公室(EA Program Management Office)这样的专为企业架构过程所设的部门,也包括诸如质量保证(Quality Assurance)、配置管理(Configuration Management)、风险管理(Risk Management)、安全以及评估这样的较为通用的信息技术支持职能单元。

    (3)定义架构过程和方法

    架构内容深度和详细度制约因素

    架构内容深度和详细度制约因素

    定义架构过程和方法:企业需要指定用于建设企业架构的过程和方法。

    • 1、明确企业架构的使用目的和范围,而这也是推动后续企业架构过程活动的主要动力。
    • 2、判断出使用目的和范围对企业架构在内容深度和详细度方面的需求,并保证各个视角下的视图内容都遵循相同的深度和详细度标准。
    • 3、选择适当的企业架构制品,并使用上一步指定的深度和详细度水平来约束架构制品的内容。
      • 这个选择既包括挑选包含了必要内容的核心架构制品,也包括明确用于进一步阐述核心制品或在特定领域和范围内对其进行描述的支持性架构制品。
      • 从架构制品内容这一角度来看,他们需要包含企业的业务和技术资产这两个方面。
    • 4、选择适当的架构框架理论和用于辅助架构建设的自动化工具
      • 在联邦政府的范围内,企业架构框架理论,例如上面提供过的FEAF,DoDAF和TEAF等,因而各机构可以按照自己的实际情况在这些框架中选择并定制出符合自身情况的框架理论。
      • 为了加强架构的可用性并提升架构开发的效率和准确性,选择适当的自动化架构工具是必不可少的。
      • 注意:自动化工具的选择也要照顾到企业的规模、复杂度以及员工熟悉度等多个方面。

    (4)开发基线企业架构

    开发基线企业架构:各个企业或组织需要根据已经确定的架构目标、范围和所采用的架构框架对当前自身的状态进行各种制品的开发,包括针对核心架构制品的开发、支持性架构制品的开发、其他由于特定需求而单独定义的架构制品(简报图表、会谈纪要等)的开发

    在联邦企业架构指南中,关于企业架构核心团队对于架构开发过程(对基线企业架构和目标企业架构的开发均适用)所要进行的各种活动做了如下图所示的归纳:
    在这里插入图片描述

    架构制品开发过程

    • 数据收集:识别和收集用于描述企业或机构当前状态的各种信息。
    • 初步架构制品制定:在此步骤中各种初步的架构制品将会被创建。
      • 注意:架构开发过程是个循环往复的过程,因而在一次迭代中也许并不能创建所有的架构制品,或者架构产品的详细度也不能达到最终要求,这都需要在后续的迭代过程中加以改善。
    • 审核与修订:审核架构制品的准确性和完成度,并根据审核结果对架构产品进行修订和改善。
      • 具体过程:该审核过程应该在架构开发过程中的多个时点进行,而不是一个一次性的过程,并且每次审核过程应该分为两个阶段:首先由架构核心团队的资深成员对架构制品进行一个快速审查,在此之后提交给各个课题专家(在这一次的审查中,参与的成员可能包括主架构师、架构核心团队、质量保证人员、风险管理人员、课题专家以及各业务领域负责人)进行再一次的审核。在审核结束后,需要针对架构制品进行适当的修改和完善,之后提交给企业架构执行委员会(EAESC)和技术审查委员会(TRC)用于对架构制品进行验证和最终确定。
    • 发布和交付:在架构制品被提交给企业架构执行委员会(EAESC)和技术审查委员会(TRC)后,若通过,则包含各种架构制品的企业架构将会被发布,而且相关文档也会被一并交付,同时相关的数据库以及架构工具也要被更新。

    (5)开发目标企业架构

    “开发目标企业架构” 与 “开发基线企业架构” 只在内容方面有区别:

    • 企业架构制品开发过程的适用性:前者用于为企业或组织未来的目标状态而制定架构,而后者则用于描述企业或组织当前的状态。因而(4)中的架构制品开发过程同样也适用于开发目标企业架构制品。
    • 实际上,在这个架构制品开发过程中关于基线(当前)企业架构制品的开发和关于目标企业架构制品的开发应该是同步进行的,所以这两个过程可以被统称为“企业架构制品开发过程”。

    (6)开发序列计划

    为了实现从当前架构到目标架构的过渡,企业或机构需要通过一系列相互关联的活动以一种增量的方式逐步实现,而为了管理和维护这样一个繁复的演进过程,企业或机构就需要制定和维护一个系统过渡路线图或者序列计划。由于目标企业架构往往是描述企业在一段时间之后(可能三到五年的时间)的未来状况,因而为了增强这一过渡过程的可行性和应变能力,企业或架构需要在当前架构和目标架构之间采用与之相同的描述方式建立起一系列用于描述中间过渡状态的架构。由于环境是不断变化的,符合实际的当前架构和目标架构也需要在环境的推动下而发生变化,因而这些描述中间过渡状态的架构也需要通过维护来确保其准确性和可行性。为了将这样一个包含若干中间状态的过渡过程加以细化,从而得到一个可以用来指导实施的序列计划,企业或组织可以通过如下几个步骤来实行:

    • 进行差距分析:企业或组织需要以当前架构和目标架构为依据,通过差距分析方法并对其进行对比,在两者的相关架构制品中寻找演进的机会,从而得出为了达到目标状态而需要进行改变的各个组件。
    • 识别遗留、过渡和新系统:此三种系统组成了演进至目标架构所需的各技术组件。其中遗留系统指的是当前在运行,但是在目标架构部署后会被淘汰的各种系统和应用;过渡系统是指当前在运行,甚至在过渡过程开始后或者在目标架构被部署后的一段时间内都需要被使用的各种系统和应用;新系统,顾名思义,是指在当前还不存在,但是在目标架构中需要被实现的系统和应用。在这些系统被识别之后,他们之间的关系以及在过渡过程中的演进情况需要被明确(例如,通过系统迁移图)。
    • 进行迁移规划:企业或机构需要把当前和目标架构的差距进一步细化为一个个的可执行项目,并为这些项目配置合适的资源,同时还需要按照优先级顺序为这些项目制定实施规划。这既需要企业或机构了解自身的变化适应能力,也需要掌握这些项目在资源需求、风险、优先级等方面的情况。
      • 对变化了的业务过程所做的实施工作可以被表示为一个个包含若干可执行项目的方案倡议(program initiatives)。通过差距分析,企业或机构可以发现需要被增强、修改或替换的各个方面,并通过依赖性分析决定用于实现演进的各种活动的各种组合方式(例如,顺序执行或并发执行),以及每个项目所需要完成的工作内容,并借此定义每个项目。
      • 对项目进行依赖性分析、衡量每个项目的重要度,并借此为每个项目评估其优先级,从而为项目组合制定序列规划的草案。
      • 最后,根据企业或组织的短期需求、财务约束下各业务单位潜在的动荡因素等方面对序列规划进行审核和修缮。

    (7)使用企业架构

    企业架构过程通过与其他企业中的管理过程和方法结合可促进企业或组织的良性发展,即使用企业架构的过程就是将企业架构与其他管理过程相协同的过程。

    • 企业架构描述了企业或组织的当前状态、未来的期望状态,以及实现未来状态的过渡实施方案,即企业架构为企业或组织提供了一个包罗万象但组织有序的信息库。企业或组织中的各种活动都可以将该信息库作为基础,从而在信息充足且可靠的情况下做出各项决策,并且企业中原本隔绝的各个角色也可以使用相同方式进行交流,从而加强了企业或组织内外的合作。
    • 例如,在资金规划和投资控制(CPIC)过程中,企业架构可以为其提供目标状态,从而企业或组织的投资可以在符合未来期望的前提下进行,并且企业架构所提供的各种企业当前状态也为企业或组织的投资决策提供了准确可靠的信息。

    此外,企业架构还可以有如下用途

    • 即使一个企业或组织并不打算进行一个大幅度的IT升级,企业架构也可以作为库存管理、日常维护以及咨询等方面的资源而存在。针对企业当前架构的分析可以为在企业或组织中寻找各种改进机会提供帮助。
    • 企业或组织可以借助企业架构中的各种制品来对企业的业务和技术方面的培训进行辅助。
    • 可以使用企业架构对企业或组织进行调研和验证。由于企业架构对企业或组织的自业务到技术的各个层面都进行了建模和描述,因而可以基于这些信息对企业或组织以模拟的方式进行调研和概念证明(proofs-of-concepts)。
    • 企业或组织可以在CPIC过程之外进行小型、低风险的项目开发,但是项目的管理还是需要与企业架构相一致。与企业架构相一致有助于项目与企业或组织的集成。
    • 各个运维项目需要以当前架构作为其背景,而且他们的优先级和决策会受到企业架构过渡计划和目标架构的影响。

    (8)维护企业架构

    企业或组织自身和其所处的环境都是不断变化的,而企业架构的核心就是客观的反应企业或组织的当前和期望状态,并根据当前情况制定达到期望状态的计划,所以企业架构也需要跟随这些变化而进行不断的演进。

    • 维护企业架构:在各个企业或组织中,负责维护企业架构演进的工作应由CIO、主架构师和企业架构项目管理办公室(EAPMO)负责,并且通过监管流程系统和独立的审核机制,企业架构核心团队可以周期性地对企业架构与不断变化的业务实践、资金配置和技术引入等方面的相符合情况进行评估和校准。
    • 企业架构的内容包括了当前企业架构、目标企业架构和序列计划中所涉及到所有架构制品,因而针对企业架构的维护就是确保这些制品与企业或组织的实际情况相一致。

    (9)控制与监督

    控制与监督过程:作用于整个企业架构过程中的所有步骤,用于确保企业架构在开发、使用和维护过程中遵守由CIO委员会制定的这份联邦企业架构实施指南中对于各步骤所做的约定。

    首先企业或组织需要确定企业架构项目管理控制的有效性。在企业架构管理组织架构的建立中,企业架构项目被交由CIO、主架构师和企业架构项目管理办公室负责,而为了得到关于项目进行情况的可视性,并借以监督管理企业架构项目的执行,这些责任实体需要在如下几个方面进行定义:

    • 所需要知道的企业架构项目相关信息。
    • 何时以及如何获得这些信息。
    • 这些信息的具体内容和表现形式。

    当这些企业架构过程的责任实体按上述定义获得了有关企业架构项目的信息,他们就可以借此识别出企业架构项目中不符合实施指南要求的地方,并针对这些问题采取相应的修正措施。

    三、浅谈概念

    “架构”、“架构框架”、“企业架构”和“企业架构框架”

    • “架构”
      • 架构的本质并非是要解决领域内的具体问题,而是复杂度管理,用于将所面对的复杂客观对象、问题或解决方案的复杂度进行有效的分解和管理,并尽量减轻内外变化所产生的影响。
      • 领域问题的解决靠的是相关的解决方案,同样一个问题可以有不同的解决方案,虽然他们的目标是一致的,但由于各自架构的不同,各个解决方案的灵活性、坚固性和扩展性均不相同,因而我们在为解决方案选择架构的时候关注的并不是其是否可以解决目标问题,更多是对架构所带来的灵活性、坚固性和扩展性与相应成本之间进行权衡
    • “企业架构”。以企业为描述目标的架构,注意:此处“企业”并非公司。
      • 架构的目标在于对目标问题的解决方案的复杂度进行分解和管理,那么对于“企业”来讲,企业架构所要管理的又是企业哪个方面的复杂度呢?企业中的IT与业务的协调问题
      • 原因:虽然IT技术在企业中获得极大的应用和发展,但是其与业务发展的不平衡也逐渐显现,技术人员多强调技术的先进性和超前,忽略业务需要,甚至有时IT技术甚至充当了放大器的作用,将决策的错误加倍放大,因而才需要将两者的发展进行协调。
    • “架构框架”和“企业架构框架”
      • “企业架构框架”是以“企业架构”为目标的框架。在这里插入代码片
      • “架构框架”:用来创建、维护和/或使用架构的方法论。例如:Zachman和FEAF其实都是企业架构框架,论述了建设、维护和/或使用企业架构的方法。
      • “架构框架”和“架构”:前者提供了各种各种分析和运算方法,而后者是这些方法在某个领域内的产物。其实与企业架构理论相比,我倒是觉得企业架构框架明确了企业架构的内容和建设步骤及方法,是将企业架构落实的工具和方法,相对不应该那么空洞无物,不过如果忽视了企业架构的意义,恐怕企业架构框架也会觉得太过虚无缥缈。
      • 此外,由于业界的企业架构框架理论往往综合了多个组织和企业的实践经验,并天生具有高度抽象性,因而乍一看会给人一种过于庞杂的印象,其中步骤繁多,涉及到的企业架构内容也非常繁杂,但有一点需要说明,诸如TOGAF等有名的企业架构框架标准并非强制让人硬性照搬,相反鼓励使用者根据自己企业或组织的需要对框架理论进行定制和裁剪,因而强行照搬从某一方面倒违反了标准的精神,并且采用这种强搬的方式进行企业架构建设,也往往会让小企业望而却步,其实不然。
    展开全文
  • 中国移动通信集团设计院有限公司 大数据具备数据量大数据类型多数据处理速度要求高和价值密度低的特点传统分析系统架构RDBMS +小型机+ 高端阵列模式下传统数据库无法支撑海量数据如100TB以上性能下降非结构化数据...
  • 企业架构

    2021-08-03 00:16:37
    前几天和一位技术界朋友谈起企业架构。因为技术界也有一个词叫企业架构,主要是被一伙搞TOGAF培训认证的人搞火的。但事实上,TOGAF来源于美国国防部的信息管理技术架构(Technical ...

    前几天和一位技术界朋友谈起企业架构。因为技术界也有一个词叫企业架构,主要是被一伙搞TOGAF培训认证的人搞火的。但事实上,TOGAF来源于美国国防部的信息管理技术架构(Technical Architecture for Information Management: TAFIM)。看到没,它是一个企业IT系统架构的过程模型标准,根本不是企业架构。

    真正的企业架构,应该是我下面即将要说的。

    因为我有三件事,逼迫我必须快速看透一个企业,所以我必须要寻找一种框架方法论:

    1、我是从做行业信息化起家的,历经零售、医疗、汽车、地产,几乎把中国挣钱的肥肉行业都做了个遍。我曾经的许多同事都留在了那个行业,但是我却在不同的行业信息化不断地跳跃。所以我继续寻找一个通用方法,如何快速地摸清楚一个行业的主干与本质

    2、我面对的客户经常都是大型巨型企业客户。如果对客户快速摸清楚,也是我必须具备的一个基本功

    3、我是投资委员会成员,经常需要对一个投资标的做投资决策。但是隔行如隔山啊,如何快速看清楚一家企业,不至于我下的投资决策打了水漂,真是如履薄冰

    所以我自己在长期工作中摸索了一套如何快速调研清楚一家企业的方法论。见下图。

    当然,这个图涵盖的内容很全。如果你们想快速抓住一家企业的主干,也可以简单粗暴一点,就抓住核心两颗球:怎么做产品、怎么卖产品,按照价值链把这两颗球串起来,你们就能很快洞穿一家企业。不过我希望大家在洞穿这两颗球的时候,除了问问他们的销售体系和销售网络之外,最好还能问问他们是怎么做持续的客户关系经营的。我知道,大量的中国企业是不做持续的客户关系经营的。

    毕竟在中国,有愿景有战略的不多,有创新的不多,有管理的不多。大家都是很朴实:做东西、卖东西。所以,抓住核心的这两颗球,对于洞穿一家普通的中国企业很实用。就连管理大师德鲁克在《管理的实践》中都说:任何企业都有两个基本职能,而且也只有这两个基本职能:营销(卖东西)和创新(做东西)。

    但是,有的中国企业比较高级一些,有能感受得到的管理,尤其在上海、深圳这两个城市,不少大型巨型企业都给我这种感受。所以还得摸透他们的运营保底层的东西,如运营流程和PDCA管理、KPI考核体系与激励,如财务管理、人力管理,如风险管理和合规。

    资本是把双刃剑。有人敬而远之,有人癫狂沉迷。但其实资本是个加速工具,可以帮助你很快完成战略布局、业务结构调整、新旧动能转化。所以我建议大家健康地直面它,大胆地使用它,但不要被它痴迷了。很多人忘记了企业实务经营,而不断的并购,不断地市值,再不断地并购,最后砸地上了。

    企业治理结构是中国企业普遍都缺乏的,不管是国企还是私企都普遍缺乏。中国人分不清楚董事会该干啥、经管团队该干啥,所以缺乏我过去描述的西方董事会:

    事前:雇佣咨询公司做战略规划、业务流程梳理、考核指标梳理

    事中:雇佣IT公司把业务流程内置固化到软件里

    事后:雇佣会计师审计师事务所做合规审计

    很多中国人以为咨询公司、IT公司、会计事务所,是经管团队雇佣的。

    企业治理是个长治久安的根基大事,是为了永续经营。而:可持续发展与社会责任也是为了企业永续经营。我曾经在《出海的两个前提:社会责任和可持续发展》详细写过,我就不赘述了。其实创新、持续经营的客户关系、品牌、现金流等等要素都是可持续发展里的核心要素。

    最后我再提提战略。战略战略,一定是战什么、略什么。

    略,就是:不把战略资源(精力/时间)消耗在非战略赛道上。用中国一句话来说就是:将军赶路不追小兔。

    战,一定要战。很多企业的战略不含战。毛主席在毛选第一卷第一章第一句就说:谁是我们的朋友、谁是我们的敌人,这是革命的首要问题。

    你看美国,战苏联、战日本、战中国。如果没有假想敌了,就提愿景,进军火星宇宙。

    但很多企业家不明白这个道理。而是我有多少米,我就做多少饭。我也不和谁竞争。我只求我今年比去年有增长就好。

    战,一定要有战的对象。要研究战的对象,要研究战的策略,要提早进行战局的布局。战略的布局非常关键,下过围棋、跳棋的人都很清楚,步步都是为后面的步儿留步,而且所有的步骤都能最终串起来,层层天罗地网。

    展开全文
  • 企业总体架构规划(Oracle 战略专家培训课件) 融合可信计算技术的大型集团网站系统等保三级设计方案 商业银行信息安全建设规划 商业银行IT风险与信息安全管理 规划企业整体上云战略 苏宁六年企业IT架构的演进之路 ...
  • 基于“大云物移”的电力企业培训教学云服务体系设计研究.pdf
  • 架构 高级系统架构培训笔记

    千次阅读 2020-01-27 16:08:23
    前几天参加了中科院计算所培训中心谢老师的高级系统架构培训课程,将其中的一些点做了下记录: 系统架构师的工作是复杂设计总体解决方案以及领域对象的逻辑和物理布局,这是一项在复杂环境中高风险、高影响力的...
  • 第6章 安全培训 6.1 安全培训的问题与“痛点” 安全意识就是 "对风险的感知和主动规避"。 6.1.1 信息安全意识不足的真实...未建立系统化的信息安全培训体系 2.培训针对性不足,培训内容不接地气 3.培训形式单.
  • 培训中心根据企业信息化架构设计在我国企事业单位信息化建设中的战略影响作用,结合国内外成熟理论体系与众多企业IT规划案例,提炼形成了包含信息架构设计、信息化最佳实践在内的“企业架构及IT规划”培训
  • 经过我和我的团队一年的不懈努力,基本完成了公司信息安全体系的初步建设,我设计的安全体系架构分为六大块:安全开发体系、安全防御体系、数据安全体系、隐私合规体系、资产管理体系、安全管理体系,六大体系共同...
  • 高级架构培训笔记

    千次阅读 2018-05-09 19:25:58
    前几天参加了中科院计算所培训中心谢老师的高级系统架构培训课程,将其中的一些点做了下记录:系统架构师的工作是复杂设计总体解决方案以及领域对象的逻辑和物理布局,这是一项在复杂环境中高风险、高影响力的活动...
  • 企业架构 - 开篇:TOGAF介绍

    千次阅读 2018-07-21 19:43:07
    在《年度总结和计划:去年4个1,今年5个1》中说过今年我准备在项目组引入一个架构方TOGAF。工业和信息化部副部长杨学山在一次内部座谈时提到:与西方发达国家比,国内的信息化建设在硬件方面已经不相
  • 本文首发微信公众号:码上观世界。导读企业架构转型是企业数字化转型的重要抓手和实施手段,而企业业务架构设计是企业架构设计的重要内容和决定部分,是衔接企业战略和IT项目的桥梁。而如何通过业务架...
  •  上海信息化培训中心是开放群组中国合作伙伴,举办TOGAF9.1资格企业架构培训,为期五天,将涵盖TOGAF概观、架构愿景、业务架构、信息系统架构和技术架构架构开发方法、企业架构连续系列、架构内容框架和元模型...
  • 中小型企业网络架构实验

    千次阅读 2019-09-05 20:21:57
    中小型企业网络架构综合实验 一、实验目的: 熟练掌握中小型企业网络架构的基本配置和原理 二、实验器材: 华为交换机10台、华为路由器5台、主机若干 三、实验要求: 1.r1 g0/0/0所连子网为192.168.1.0/24...
  • 企业架构之道(一)之企业信息化建设

    千次阅读 2018-12-06 12:07:58
    随着信息技术的发展,各个工业、制造业领域,甚至是在人们的日常生活领域中,自动化以及效率提升等方面均得到...随着时间的推移,企业中的信息系统越来越复杂,而且业务与信息系统的关系也日趋紧密,从而使得组织或...
  • 想成为java架构师,首先你自身得是一个高级java攻城狮,会使用各种框架并且很熟练,且知晓框架实现的原理。 比如,你要知道,jvm虚拟机原理、调优;懂得jvm能让你写出的代码性能更优化;还有池技术:什么对象池、...
  • 目前全球的机构主要分为四种不同的企业架构部署类型。第一种类型的机构,它们的企业架构就是零,因为这种机构里面没有正式的架构管理方面的方法;第二种类型的机构,它们的企业架构被称为被动式的架构,实际上这种...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 27,166
精华内容 10,866
关键字:

企业培训体系架构图