将近一年多没有更新博客和自己的订阅号。除了本身有点懒之外,也有幸在上半年花了一些时间考出了CISSP。最近也在研究云平台相关的一些课题。

写这篇文章本身是因为在工作中经常有IT乃至业务的同事会问及企业在选择SaaS平台时的考量以及如何保证其符合企业安全体系的标准。因而我就以自己有限的认知提供一些有限的见解,以供参考。

在这里首先简单介绍一下什么是SaaS。云的服务模式目前主要分为三种(SPI):基础架构即服务(IaaS),平台即服务(PaaS)以及软件即服务。其中SaaS平台供应商将应用软件统一部署在自己的服务器上,客户可以根据工作实际需求,通过互联网向厂商定购所需的应用软件服务,按定购的服务多少和时间长短向厂商支付费用,并通过互联网获得Saas平台供应商提供的服务。

从云平台的责任矩阵角度来解释就是你只需要负责使用供应商提供的公网应用平台,剩下的和都交给供应商负责就行。当然账号,客户端安全以及数据的分类管理还是要客户自己负责的。

那我们就要问第一个问题就是为什么我们要选择SaaS?

通俗的一些好处往往是敏捷性,弹性以及潜在的经济性。最根本的可能往往是企业可以将更多的资源专注在业务层而不是底层的技术。虽然每个公司的业务模式不尽相同,但大多数都会根据业务的需求可以将非敏感非核心的业务需求通过SaaS的方式实现以节省出大量IT运维方面的成本(当然也有少部分把核心应用如ERP搬上云的)。Office 365就是最好的一个例子,你再也不需花大量的硬件软件人力成本去维护一套exchange,sharepoint或者Skype for business 系统,只需要按用户数以及需求购买相对应的license即可。让专业的供应商做专业的事。

其次从架构的角度来看选择SaaS至少需要考虑以下几个方面:

1. 和现有应用的整合是否有问题。比如数据传输,接口调用,以及和企业IAM的整合。

2.平台成熟度和业务功能性是否满足业务需求

3.管理的流程是否符合企业自身要求

4.收费模式的确认

当然可能还有其他因素,企业可以根据自身情况有更多其他的考量。

那从安全方面SaaS平台会有那些风险呢?

可能有人会觉得SaaS的安全不是都由供应商全权负责的么?的确如此,但是有人的地方就有风险,工作可以授权或者外包,但责任不行。一旦你使用的平台出现了任何问题,受伤的往往都是公司自己的业务。

以个人的经验来看SaaS的平台往往经常会遇到以下一些问题和风险:

1.数据主权不清。曾有见过公司用供应商平台前连数据所有权都不确认,结果终止合同时极为被动痛苦。

2. 供应商技术人员水平低,平台安全性差,没有BCM。由于平台本身是不透明的,即便安全做的很糟糕,云用户本身也无法察觉。

3 .供应商财务状况不稳定,出现业务变动,跑路或者公司倒闭。也能使得云用户极为被动,可能事后换平台的成本反而还不如当初自己直接开发一套应用部署。

4. 平台锁定,迁移成本高。然后被无良供应商各种牵着鼻子走。

5. 数据生命周期管理-比如在合同终止时,没有按要求清除用户数据。

既然SaaS本身不透明性决定了用户只能获得平台有限的信息,因此作为SaaS的用户,企业必须谨慎选择云平台,并在依靠一些治理手段对云供应商做一些限制。

总体来说可以使用评估,合规审计,合同等治理方式

1. 合同----合同是将治理扩展业务合作伙伴和服务提供者的重要工具,把一切落在条款上保证SLA和承诺不会违约的唯一方式。其中至少包括或定义数据主权,数据生命周期(数据删除),隐私适用规则,SLA要求和惩罚措施,责任划分,对平台审计权,由于云平台责任导致的安全事故所要做的财务赔偿等。一般来说小型SaaS提供商的合同谈判可行性更高,但是往往他们无法在复杂环境下满足或超过客户治理和风险管理的要求,最重要的是国内小型互联网公司非常容易亏损跑路。成熟的SaaS供应商往往有自己的合同模板,并且谈判性可能不高。合同的洽谈是一个很复杂的过程,一定要在法务和采购的共同协助下完成此事。

2. 合规报告---主要通过第三方对云平台的安全性进行认证或者合规的报告。一般来说国内最近比较多的等保(SaaS考虑至少三级),国际上的ISO 27001(基础)+ISO 27017(云信息安全), STAR(中国版C-STAR),通用准则(CC),PCI-DSS, HIPPA, SSAE-16, SOC 等。企业本身也可以对平台进行审计,但是这项权限必须在合同内得以体现。一般来说都是通过第三方操作,大的SaaS供应商本身比较少愿意让客户直接审计。

3. 评估----主要包括一些同行反馈,服务水平,财务水平(考虑跑路的可能性),平台的安全措施,第三方认证,数据导出的可能性(API或者供应商协助),平台的可迁移性(避免供应商过度锁定)。评估的过程也要包括合同以及合规的内容。

一般来说企业本身必须要有具体的风险管理和风险接收/缓解的方法,以评估每个解决方案的风险。最后就是剩余风险的处理。由于风险的容忍度根据数据本身的价值和企业的风险偏好都有关,因此具体情况具体分析。

最后强调几个我认为可能比较容易容易忽视的点:

1.尽可能的要考虑平台可迁移性或者可移植性。即便你选择了一个比较靠谱的SaaS提供商,也不能排除由于企业自身内部出现的变化而调整整个企业架构,从而主动更换对应的SaaS平台。

2.必须要有业务连续性方案和流程。虽然有SLA合同的保证但是针对重要的SaaS应用,企业自身还有要相对应的BCM方案。比如定期的将SaaS数据导出自己的内部数据平台,SaaS故障时用其他备用方案推进日常业务流程。

3.合同上的条款尽可能详细,丑话一定要说在前。合同在使用SaaS平台过程中保护企业自身利益最好且唯一有效的工具。

总的来说,业务选择上SaaS就像是把孩子交给了寄宿学校。在推进业务上可以根据需要八仙过海各显神通,有时候甚至可以激进一些。但是在安全上则不能当一个“莽夫”,IT部门要利用自己的专业知识帮业务规避风险,深入业务并保驾护航。业务部门在许多控制节点上也必须让专业的IT人员做守门员,因为不同的专业角度所看到的问题不尽相同,切不可保有侥幸心理。

选择SaaS平台的那些事的更多相关文章

  1. 记一次构建SaaS平台项目失败后的反思(收集的客户需求太少,且没有区分重点,闭门造车。技术演变要渐进)

    记一次构建SaaS平台项目失败后的反思 前言: 笔者从2017年起开始着手将公司现有的软件系统改造成多租户模式,以降低整个系统的运营成本.但最后这个项目以失败告终.今天,我将对这个SaaS项目是如何走 ...

  2. 构建安全可靠的微服务 | Nacos 在颜铺 SaaS 平台的应用实践

    作者 | 殷铭  颜铺科技架构师 本文整理自架构师成长系列 3 月 19 日直播课程. 关注"阿里巴巴云原生"公众号,回复 "319",即可获取对应直播回放链接 ...

  3. SaaS平台是什么,为什么字节、腾讯等大厂都在抢相关人才

    SaaS平台很多人可能没听说是什么,但是从事TO  B公司的员工来说,SaaS平台应该都有所耳闻.从2016年开始,腾讯开始发力TO B算起,到处在挖TO B公司的骨干人才,而熟悉SaaS平台的人才竞 ...

  4. 多租户SaaS平台的数据库方案

    1.1 多租户是什么 多租户技术(Multi-TenancyTechnology)又称多重租赁技术:是一种软件架构技术,是实现如何在多用户环境下 (此处的多用户一般是面向企业用户)共用相同的系统或程序 ...

  5. 金融SaaS平台之构思篇

    背景介绍 从事过金融服务行业的同学们都知道,业务系统是非常之多的,核心的就有估值.交易.TA.资讯系统,其他类似产品生命周期系统.投后分析系统等待,而且各个业务系统的逻辑非常之复杂,所以一般金融机构都 ...

  6. Spring Boot实现SAAS平台的基本思路

    一.SAAS是什么 SaaS是Software-as-a-service(软件即服务)它是一种通过Internet提供软件的模式,厂商将应用软件统一部署在自己的服务器 上,客户可以根据自己实际需求,通 ...

  7. 为中小企业打造的数字化采购SaaS平台的特点与必要性

    ​激烈的市场竞争.复杂的国际环境.以及疫情的常态化将企业的供应链推向风口浪尖.供应链管理(SCM, Supply Chain Management).供应商关系管理(SRM,Supplier Rela ...

  8. 搭建openstf平台的那些事

    最近老板建议秀下肌肉,搭建一个STF android 真机测试平台,记录一下坑. 1. stf 是node开发的,通过npm即可安静,依赖的数据库是rethinkdb, 如果搭配appium效果更佳, ...

  9. 基于SaaS平台的iHRM项目的前端项目介绍

    1.下载安装node.js 访问https://nodejs.org/en/,然后下载安装即可 2. 查看是否安装成功 打开cmd命令行,输入node -v 如果出现对应的版本号,即为安装成功 3.从 ...

随机推荐

  1. Linux 【Shell脚本经典案例】

    Shell 简介 hell是linux的一外壳,它包在linux内核的外面,为用户和内核之间的交互提供了一个接口 当用户下达指令给操作系统的时候,实际上是把指令告诉shell,经过shell解释,处理 ...

  2. [SSM项目]三-日志Logback

    Logback介绍 Logback的主要模块 logback-access :与service容器集成,提供通过http访问日志的功能.即第三方软件可以通过这个模块来访问日志. logback-cla ...

  3. apche编译安装

    常见的网页类型:htm,html,shtml,stm.php,asp,aspx,shtm,jsp等等Apache本事只处理静态页面,处理动态页面需要使用libphp5.so这个模块去工作,编译php也 ...

  4. OKR工作法

    OKR 目标与关键成果 [Objectives and Key Results] OKR是目标管理工具,它的价值不在于是否完成OKR,而在于呈现出团队最应该关注的事情,通过持续性的沟通确保每个人都聚焦 ...

  5. springboot 配置和使用过滤器

    首先在Application文件中添加注解@ServletComponentScan自动扫描当前类的同包以及子包,这样才能将filter装入bean package com.example.acade ...

  6. 关于弹性布局flex

    什么时候使用flex布局? 当页面排版涉及左右浮动.垂直居中等时,应使用flex布局来避免传统的盒式布局带来的一些Bug. 如何使用flex布局? 在目标元素的父元素设置csss属性.display: ...

  7. Pycharm永久激活2且jetbrains全系列产品

    Pycharm永久激活2 注意:本教程补丁来源于https://zhile.io,如有侵权请联系作者删除! 本项目只做学习研究之用,不得用于商业用途! 一.激活前注意事项 PyCharm尽量在官网下载 ...

  8. ES6 常用总结——第二章(字符串的扩展)

    ES6为字符串添加了遍历器接口,使得字符串可以被for...of循环遍历. for (let codePoint of 'foo') { console.log(codePoint)} // &quo ...

  9. .netcore+vue 实现压缩文件下载

    一.前言 目前接触的项目中,给定的需求是将系统内所有用户的数据整理好,并保存到文件夹内,目的主要是防止用户在实施人员已配置好的基础上由于不熟悉系统,导致的误删或者误操作.减少实施人员的配置工作.我首先 ...

  10. Redis中的事务(多命令)操作

    作为一个nosql数据库,事务是必要功能.但是redis我们是可以理解为它不支持事务操作的,因为它的特征完全不满足我们对事物的正常理解 ps:我不知道是谁一开始提出redis支持事务的,但是我更倾向于 ...