文档章节

微服务与安全

有容云
 有容云
发布于 2016/12/29 15:45
字数 1114
阅读 24
收藏 0

“我们都知道洗手在预防疾病传播上的重要性,但是在面对应用安全问题时,类似的行为却变成了马后炮。我们已经掌握了在开发工作流中加入测试的做法,但是对于安全问题却常假定稍后会有其他的人去解决。”这是Sam Newman近期在伦敦微服务大会主题演讲中所提出的观点。他的演讲内容围绕微服务环境中的安全问题而展开。

 

Newman当前供职于Atomist,他认为各个微服务构成了一种六边形的形态,其中每种微服务的命名是与它们的业务职责相对应的。这些微服务具备自治能力。Newman特别指出,这些微服务的自治能力主要来自于它们的独立可部署性。

 

单体系统通常会具有一个边界,以及一个需要得到保护的数据库。如果攻击者借助安全漏洞闯入了这样的系统,他很有可能会窃取到系统内的全部东西。如果基于微服务的系统具备了适当的安全性,我们就可以限制攻击者窃取的权限,以及在一次攻击破坏了某个服务后所能窃取到的东西。但是在使用微服务的同时,也暴露了更大的可攻击面,使得更多的服务器可被攻击。单体进程内的方法调用,现在变成了对远程API的网络调用。另外为大量服务器手动打补丁容易出现漏打补丁的情况。

 

通常我们在发现渗透或潜在的攻击时并不会采取理性思考。我们通常会修补漏洞以防止被再次利用,而不是退后一步从整体看待这个问题。这意味着我们常将钱花在了错误的事情上,反而将容易受攻击的缺陷留在了系统中。

 

正确的做法应该是建立威胁模型,并仔细思考如何在防范攻击问题上合理地分配你的精力。Newman给出了他们所使用的两个例子,分别是由Bruce Schneider提出的Attack trees以及使用了STRIDE和DREAD威胁建模技术的Microsoft安全开发生命周期

 

增强安全性的一个简单做法是对包括内部网络在内的所有地方都使用HTTPS。该做法可确保消息载体不会被篡改,而且不会出现恶意的冒牌服务器。Let's encrypt是一个免费且自动化的认证机构,它的目标是试图为在公共网络中随意获取HTTPS认证提供便利。Newman指出Let's encrypt最重要的特点在于它是自动化的。服务器在对客户端进行验证时需要客户端认证,但是通常情况下管理这些认证信息会是一种负担。

 

Newman认为Docker是一项伟大的技术,但是他同时也指出许多受信任的官方镜像都具有严重的缺陷,这意味着安装了这些镜像的系统同时也包含了该镜像的缺陷。Newman极力推荐使用clair这类工具,它具有缺陷静态分析及日常打补丁的功能。

 

检测或是对已发生的攻击事件了如指掌对防止新的攻击是十分有用的,但是在运行中的服务器上发现新的缺陷也是十分重要的。一般情况下攻击会在日志中留下痕迹,因此Newman指出,我们首先要去做的一件事情是如何在一个集中的地点获取对所有日志的访问。这不仅是出于安全方面的考虑,而且是来自应用开发上的考虑。

 

除了预防和检测问题,Newman还指出对漏洞问题做出响应和恢复受攻击系统的重要性。你如何对一个安全漏洞问题做出响应并就该问题与客户进行沟通?你如何去恢复一个被攻击的系统?在数据散布到微服务系统中去之后,从备份进行恢复会变得更加困难。

 

来源:http://www.youruncloud.com/docker/1_90.html

本文转载自:http://www.youruncloud.com/docker/1_90.html

有容云
粉丝 2
博文 52
码字总数 38431
作品 0
深圳
私信 提问
horseluke/content-guard-microsrv-aliyun

基于阿里云安全接口的内容安全微服务 概述 这是一个基于阿里云安全接口而编写的内容安全微服务,主要是为内网提供持续的内容检查和发现机制。 架构如下: 本微服务同时也是以下demo: 淘宝O...

horseluke
2015/10/12
0
0
微服务+zookeeper+log=轻量级SoA

在分布式Java框架中,dubbo算是比较成熟的了,但是好像现在不开发了。 dubbo仅仅支持Java开发,这对异构系统支持不是很理想。可能和ali的技术路线相关。 最近看了一下微服务的概念,想了一下...

精通吹水
2016/03/27
1K
2
CA Technologies发布最新API管理方案协助创建并部署微服务

  【IT168 资讯】2017年7月7日,CA Technologies发布API管理组合中全新的解决方案及增强的功能,帮助开发者、企业架构师和数字化领导者创建并部署微服务,同时管理那些连接、协调微服务的A...

it168网站
2017/07/20
0
0
微服务实战:从架构到部署

原创 2016-07-18 姚洪 译 Docker Docker 在这篇文章里, 计划涵盖微服务架构(MSA)的核心架构概念,以及如何在实践中使用这些架构理论。 如今,微服务“Microservices”已经成为软件架构领域...

gsying1474
2016/08/04
0
0
微服务架构系统--Abixen Platform

Abixen Platform是一个完整的微服务架构系统。其体系组成部分如下: Eureka:作为服务的注册器。 Hystrix仪表板:允许我们实时监控请求状态(例如,多少请求超时,多少次成功,多少次失败等)...

匿名
2017/04/27
550
0

没有更多内容

加载失败,请刷新页面

加载更多

非webpack require.js + vue + vueRouter + iView 实现按需加载

适合一个人开发的时候,在整个php框架下,又想单页,又可以直接后端assign变量穿透到模板。又不想写接口搞前后分离脚手架一大堆npm 包, 在php模板下 引入require.js <!DOCTYPE html><html...

一箭落旄头
6分钟前
2
0
新特性解读 | MySQL 8.0 窗口函数详解

原创作者: 杨涛涛 背景 一直以来,MySQL 只有针对聚合函数的汇总类功能,比如MAX, AVG 等,没有从 SQL 层针对聚合类每组展开处理的功能。不过 MySQL 开放了 UDF 接口,可以用 C 来自己写UDF...

爱可生
12分钟前
0
0
23.5 jumpserver介绍

23.5 jumpserver介绍 开源堡垒机jumpserver介绍: 官网www.jumpserver.org Jumpserver是一款使用Python, Django开发的开源跳板机系统, 助力互联网企业高效 用户、资产、权限、审计 管理 Auth...

oschina130111
18分钟前
2
0
Spring Cloud 入门教程(七): 消息总线(Spring Cloud Bus)(Greenwich.RELEASE)

参考网址:https://blog.csdn.net/forezp/article/details/81041062,由于此文中作者基于git和rabbitMq,为了适应内网我改造为基于mysql和kafka 一、准备工作 1、安装kafka 参考这个:kafka...

pipi1919
19分钟前
1
0
用人工智能改变企业与客户的连接方式

  随着以AI人工智能技术为主的新一代信息技术的快速商业化落地,我国的数字经济正高歌猛进。2017年我国数字经济对GDP的贡献率为55%,接近甚至超越了某些发达国家水平,2018年我国数字经济规...

琴殇的
23分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部