亚马逊---设计安全架构

news2024/12/28 3:45:14

会从以下三个方面展开:

        1、AWS资源访问安全

        2、应用程序负载的网络安全

        3、云中数据的安全

责任共担模式

就像租房子(房东和你的责任)

AWS资源访问安全

        需要掌握以下几点:

                1、跨多个账户的访问控制和管理

                2、AWS联合访问和身份服务(例如,AWS IAM、AWS IAM Identity Center)

                3、AWS全球基础设施(例如,可用区、AWS区域)

                4、AWS安全最佳实践(例如,最低权限原则)

                5、AWS责任共担模式

将AWS安全最佳实践应用于IAM用户和根用户 (例如,多重验证(MFA))

设计包含IAM用户、组、角色和策略的灵活授权模型

设计基于角色的访问控制策略(例如,AWS STS、角色切换、跨账户访问)

为多个AWS账户设计安全策略(例如,AWS Control Tower、服务控制策略(SCP))

确定AWS服务的资源策略的正确用法

确定何时将Directory Service与IAM角色联合

IAM(身份和权限管理)

如何访问云

通过命令行或者SDK的api调用。

首先讲一下什么是SDK?

SDK是"软件开发工具包"的缩写,它是一组用于开发软件应用程序的工具、库、文档和示例代码的集合。SDK通常由软件开发公司或平台提供、旨在帮助开发者更轻松地构建应用程序,利用平台提供的功能和服务。

        SDK通常包括API(应用程序接口),这些接口允许开发者与特定平台或服务进行交互,执行特定的功能或访问特定的数据。SDK通常争对特定的操作系统、编程语言或开发环境。例如Android SDK用于开发Android应用程序, IOS SDK用于开发IOS应用程序等。

        我自己springboot常用的是Amazon AWS SDK。一句话,后端与前端的交互大多通过SDK的API打包。

IAM身份详细信息

主要区别在于权限的分发。不同用户的等级权限不一样。

用户组主要是批量的对统一权限用户的管理。目的是为了方便管理与协调。当其中用户付费或者认证之后,可移除并转入到更高权限的IAM组。

用户与角色

用户代表一种长久的身份,角色只是临时权限赋予的问题。

AWS安全凭证

角色的临时凭证

STS是secret token service

示例:跨账户使用IAM角色

示例:资源互访使用IAM角色

IAM 策略(实际上就是个文档)

IAM策略(四个elements)

EAR概念:   就是什么样的资源(resource)做什么样的操作(action)是允许(Effect)的。

比如对资源桶里的所有资源里的对象是允许操作的。

使用权限边界

服务控制策略(SCP)

服务控制策略(SCP)通常指的是操作系统中的一种安全策略或权限控制机制,用于管理系统中的服务(或进程)对资源的访问权限。SCP的主要目的是确保系统资源(如文件、网络端口、内存等)只被授权的服务或进程所访问,以增强系统的安全性和稳定性。

在不同的操作系统和环境中,SCP可能指代不同的概念或实现方式。以下是一些可能的解释:

  1. Windows Server Service Control Policy
    在Windows Server操作系统中,SCP可能指代一组安全策略或权限设置,用于管理服务(或服务账户)对系统资源的访问权限。这些策略可以通过本地安全策略或组策略对象(Group Policy Objects,GPO)进行配置,包括对服务账户的登录权限、服务所需的权限等。

  2. Linux Service Control Policies
    在Linux系统中,SCP可能指代一些控制服务运行的策略,比如通过Systemd、SysVinit或其他服务管理工具来限制服务的权限、资源使用等。这些策略可以通过配置文件或系统命令来实现,以确保服务运行的安全性和可靠性。

  3. Network Service Control Policies
    在网络环境中,SCP也可以指代一些用于控制网络服务访问权限的策略或技术,比如防火墙规则、访问控制列表(Access Control Lists,ACLs)、安全组等。这些策略可以在网络设备或操作系统中实现,用于限制服务对网络资源的访问。

IAM策略如何与SCP交互

我熟悉的SCP是。SCP(Secure Copy Protocol)作为一种网络协议。用于在本地系统和远程系统之间安全地传输文件。它建立在SSH(Secure Shell)协议之上,通过加密的方式传输数据,因此在传输过程中可以保证数据的安全性。

使用SCP可以在不同的计算机之间复制文件和目录,就像在本地系统中复制文件一样简单。通常,SCP命令的语法如下:

scp [选项] [源文件] [目标地址]

其中:

  • [选项]:用于指定一些额外的参数,比如设置传输的加密方式、设置端口号等。
  • [源文件]:表示要传输的文件或目录的路径。可以是本地文件或目录,也可以是远程文件或目录。
  • [目标地址]:表示文件或目录的目标地址,可以是本地地址或远程地址。如果是远程地址,通常使用的是SSH格式的地址,如 user@hostname:/path/to/destination

IAM Identity Center解决方案

IAM Identity Center本质上就是SSO。

SSO(Single Sign-On,单点登录)是一种身份验证机制,允许用户使用一组凭据(例如用户名和密码)登录到多个相关但独立的软件系统或应用程序中。通过SSO,用户只需要进行一次身份验证,然后就可以在整个系统集合中访问受保护的资源,而无需再次输入凭据。

SSO的工作原理(流程)通常如下:

        1、用户尝试访问受保护的资源或应用程序。

        2、如果用户尚未进行身份验证,系统将重定向用户到身份提供者(Identity Provider,IdP)进行认证。

        3、用户提供凭据进行身份验证(例如用户名和密码)

        4、身份提供者验证用户身份,并向用户颁发一个令牌(Token)。

        5、用户返回到原始的资源或应用程序,并将令牌交给它

        6、资源或应用程序验证令牌,并通过令牌中包含的信息来确定用户的身份和权限。

        7、用户被授予访问资源或应用程序的权限。

SSO的优点包括:

        1、用户友好性:用户只需要一次登录,即可访问所有相关的系统和应用程序,无需反复输入凭据,提高了用户的体验度。

        2、减少密码管理负担:用户只需要记住一个密码,而不是多个,简化了密码管理的复杂性。

        3、提高安全性:通过集中的身份提供者进行身份验证和授权,可以更好地管理用户身份和权限。

应用程序负载地网络安全

有以下重点:

应用程序配置和凭证安全

AWS服务终端节点

控制AWS上的端口、协议和网络流量

安全应用程序访问

具有合适使用案例的安全服务(例如, Amazon Cognito、Amazon GuardDuty、 Amazon Macie)

AWS外部的威胁向量(例如,DDoS、SQL注入)

设计带安全组件(例如,安全组、路由表、网络ACL、NAT网关)的VPC架构

确定网路分段策略(例如,使用公有子网和私有子网)

将AWS服务集成到安全应用程序(例如AWS Shield、AWS WAF、IAM Identity Center、 AWS Secrets Manager)

保护与AWS云的外部网络连接(例如VPN、AWS Direct Connect)

拓展一下,可能很多人不了解VPN是什么

VPN(virtual Private Network,虚拟专用网络)是一种通过公共网络(如互联网)建立安全连接的技术,用于在不安全的网络环境中创建一个私密且加密的通信管道,以实现数据传输的安全和隐私保护。

VPN的主要作用包括:

        1、加密通信:VPN通过使用加密技术(如SSL/TLS、IPSec等),对用户在公共网络上传输的数据进行加密。这样即使数据被截获,也难以解密和窃取其中的内容。

        2、隧道封装:VPN在公共网络上创建一条安全的通信隧道,将用户的数据包封装在隧道中传输。这样即便在传输过程中被黑客拦截。

        3、匿名访问:VPN通过将用户的网络流量路由到VPN服务器,隐藏用户的真实IP地址,并提供了一个虚拟的IP地址和地理位置。

        4、访问限制突破:VPN通过提供不同地区的服务器,使用户可以模拟其他地区的网络连接。用户可以连接到VPN服务器后,绕过地理限制,访问被封锁的内容或服务。

       

Amazon VPC和子网

VPC全称为virtual private cloud,虚拟私有域。就像买了一个房子,你可以规定哪个房间作为私有空间(私有子网),而客厅作为公有空间(公有子网)。

        其中私有子网的内容不需要直接与互联网通信,比如说数据库

互联网或远程访问

互联网能访问到需要有三个条件:

        1、公网的IP地址(你得在江湖上有名号啊)

        2、互联网的网关(类似于房子的门)

        3、公有子网的public route table(公共路由表),指在云计算平台(如AWS、Azure等)中用于管理公有子网的路由规则的表格。它定义了在公有子网中的数据流向的方式,决定了数据包应该如何被路由和传送。

公共路由表有以下内容:

        1、默认路由规则:默认路由规则决定了当数据包的目的地不在该子网内部时,应该将数据包发送到哪里。通常情况下,默认路由规则会将数据包发送到Internet Gateway(互联网网关),以便与外部网络通信。

        2、自定义路由规则:除了默认路由规则外,公有子网的公共路由表还可以包含自定义的路由规则,这些规则可以根据特定的需求进行配置,例如将特定目的地的数据包路由到特定的目标,或者通过网络地址转换(NAT)服务对数据包进行转换。

        3、路由优先级:路由表中的每条路由规则都具有优先级,决定了当有多条规则匹配同一个数据包时,应该采用哪一条规则进行路由。通常情况下,路由优先级由路由规则的顺序决定,先匹配的规则具有更高的优先级。

        4、目标地址范围:每条路由规则都指定了适用的目标地址范围,即该规则所匹配的数据包的目的地IP地址范围。

        5、下一跳信息:路由规则还包含了下一跳信息,指定了当数据包匹配该规则时应该时应该将其发送到哪个目标。下一跳可以是Internet Gateway、NAT网关、虚拟专用网关。

AWS Direct Connect

VPC的网络分层

路由表

网络访问控制列表

        ACL(Access Control List,访问控制列表)是一种用于控制网络设备或操作系统上资源访问权限的机制。它可以用于限制特定用户、程序或网络设备对资源的访问,以增强网络安全性并实现对网络流量的控制管理。作为一种安全机制,用来防止未经授权的访问和恶意攻击。

        在网络设备(如路由器、交换机等)中,ACL通常用于控制数据包的传输和转发。它可以根据预先定义的规则来决定允许或拒绝特定类型的流量通过设备。ACL规则通常基于源地址、目标地址、协议类型、端口号等条件进行匹配,从而对网络流量进行过滤和管理。

        在操作系统中,ACL通常用于控制对文件、目录或其他系统资源的访问权限。通过ACL,系统管理员可以为特定用户或用户组分配不同的权限,例如读取、写入、执行等,以实现对系统资源的精细化控制和管理。

安全组

安全组与网路访问控制列表的区别

示例:多层应用的安全组链

云中的安全威胁: DDos攻击(过载型攻击)

        跟打电话一样

shield standard和shield advanced提供两个服务进行防护。

AWS WAF如何运作

AWS Firewall Manager

Amazon GuardDuty

分层防御:以城堡来比喻

VPC对等连接

VPC之间互相通信

AWS PrivateLink和VPC终端节点

如果VPC比较多

AWS Transit Gateway

云中数据的安全

有以下几个知识点:

        1、数据访问与监管

        2、数据恢复

        3、数据留存和分类

        4、加密和合适的密钥管理

        5、调整AWS技术以满足合规性要求

        6、对数据进行静态加密 (例如, AWS KMS)

        7、对数据进行传输中加密(例如,适用TLS的AWS ACM)

        8、对加密密钥实施访问策略

        9、实施数据备份和复制

        10、实施数据访问、生命周期和保护策略

        11、轮换加密密钥和续订证书

加密:时间和地点

AWS Key Management Service(AWS KMS)

KMS密钥类型

AWS CloudHSM

责任分离

AWS cloudHSM 与 AWS KMS 的区别

Amazon S3 SSE(Server-Side Encryption)

保护DynamoDB中的数据

Secrets Manager

适用Secrets Manager

Secrets Manager与Parameter Store的比较

安全性设计最佳实践

最后还有以下:

        1、锁定AWS账户根用户

        2、安全组只会允许。网络ACL允许明确拒绝。

        3、优先选择IAM角色,不选择访问密钥

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

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

相关文章

探索RadSystems:低代码开发的新选择(一)

文章目录 前言一、名词解释1、低代码开发是什么?2、RadSystems Studio是什么? 二、操作步骤1.下载安装2.启动项目 总结 前言 在数字化时代,低代码开发平台成为越来越多企业的首选,因为它们可以大大加速应用程序的开发过程&#x…

ssm068海鲜自助餐厅系统+vue

海鲜自助餐厅系统的设计与实现 摘 要 网络技术和计算机技术发展至今,已经拥有了深厚的理论基础,并在现实中进行了充分运用,尤其是基于计算机运行的软件更是受到各界的关注。加上现在人们已经步入信息时代,所以对于信息的宣传和管…

医学图像分割入门-FCN理论与实践

FCN(全卷积神经网络) 引言 全卷积网络(Fully Convolutional Network,简称FCN)是一种深度学习模型,专门设计用于图像分割任务。相比于传统的基于全连接层的神经网络,FCN可以接受任意尺寸的输入…

Llama 3 实测效果炸裂,一秒写数百字(附镜像站)

这几天大火的llama 3刚刚在https://askmanyai.cn上线了! 玩了一会儿,这个生成速度是真的亚麻呆住。文案写作和代码生成直接爽到起飞,以往gpt要写一两分钟的千字文,llama 3几秒钟就写完了。而且效果甚至感觉更好? 效果惊…

前端表单input的简单使用

1.代码结构介绍 2.实战效果

GARTNER纵横四海 – 2023年LCAP魔力象限图(Magic Quadrant)上各上榜者优势和注意事项

低代码应用平台(LCAP-low code application platform)通过抽象通用可重复使用软件组件的编码,并将开发人员的工作分配给更接近业务成果的任务,来加速应用程序开发。利用这项研究来比较和对比全球LCAP市场上的上榜企业。 一、市场…

Vitis HLS 学习笔记--HLS优化指令示例-目录

目录 1. 示例集合概述 2. 内容分析 2.1 array_partition 2.2 bind_op_storage 2.3 burst_rw 2.4 critical_path 2.5 custom_datatype 2.6 dataflow_stream 2.7 dataflow_stream_array 2.8 dependence_inter 2.9 gmem_2banks 2.10 kernel_chain 2.11 lmem_2rw 2.1…

【多线程】常见的锁策略 | 乐观锁 | 轻量级锁 | 重量级锁 | 自旋锁 | 挂起等待锁 | 读写锁 | 可重入锁 | 公平锁

文章目录 一、常见的锁策略1.乐观锁 和 悲观锁(预测锁冲突的概率)2.轻量级锁 和 重量级锁 (实际消耗的开销)3.自旋锁 和 挂起等待锁自旋锁(Spin Lock)挂起等待锁 4.读写锁标准库中读写锁的实现 5.可重入锁 …

大话设计模式-依赖倒转原则

依赖倒转原则 在大话设计模式这本书中,作者通过电话修电脑这个例子引入了面向对象设计的基本原则之一:依赖倒转原则。 概念 依赖倒转原则是面向对象设计的基本原则之一,它用于减少类之间的耦合,提高系统的灵活性和可维护性。在…

基于stm32的UART高效接收DMA+IDLE编程示例

目录 基于stm32的UART高效接收DMAIDLE编程示例实验目的场景使用原理图UART的三种编程方式IDLE程序设计串口配置配置中断配置DMA代码片段本文中使用的测试工程 基于stm32的UART高效接收DMAIDLE编程示例 本文目标:基于stm32_h5的freertos编程示例 按照本文的描述&am…

Linux服务器运维工具箱 监控管理建站一个脚本全搞定!

Linux服务器运维工具箱 监控管理建站一个脚本全搞定! 一款全能脚本工具箱,使用shell脚本编写。专为Linux服务器监控、测试和管理而设计。无论您是初学者还是经验丰富的用户,该工具都能为您提供便捷的解决方案。集成了独创的Docker管理功能&a…

智慧社区整体解决方案(PPT)

1、背景与现状分析 2、解决方案 3、功能及应用场景介绍 软件资料清单列表部分文档: 工作安排任务书,可行性分析报告,立项申请审批表,产品需求规格说明书,需求调研计划,用户需求调查单,用户需求…

YOLOv9改进策略 | Conv篇 | 利用YOLO-MS的MSBlock二次创新RepNCSPELAN4(全网独家创新)

一、本文介绍 本文给大家带来的改进机制是利用YOLO-MS提出的一种针对于实时目标检测的MSBlock模块(其其实不能算是Conv但是其应该是一整个模块),我们将其用于RepNCSPELAN中组合出一种新的结构,来替换我们网络中的模块可以达到一种轻量化的作用&#xff…

Flutter MQTT通信(实现聊天功能)

MQTT协议简介: MQTT(Message Queuing Telemetry Transport)是一种轻量级的、开放的、基于发布/订阅模式的消息传输协议,最初由IBM开发。它专门设计用于在低带宽、不稳定的网络环境下进行高效的消息传输。 学习完本篇文章&#x…

ESP32嵌入式物联网开发实战笔记-C编程基础知识点【doc.yotill.com】

乐鑫ESP32入门到精通项目开发参考百例下载: 链接:百度网盘 请输入提取码 5.1 C 语言基础知识复习 本节我们给大家介绍一下 C 语言基础知识,对于 C 语言比较熟练的开发者,可以跳过此节,对于基础比较薄弱的开发者&…

HCF-Net:用于红外小目标检测的分层上下文融合网络

摘要 红外小目标检测是一项重要的计算机视觉任务,涉及在红外图像中识别和定位微小物体,这些物体通常仅包含几个像素。然而,由于物体尺寸极小以及红外图像中通常复杂的背景,这项任务面临困难。在本文中,我们提出了一种…

40.Vue 应用

Vue 应用 应用实例 每个 Vue 应用都是通过 createApp函数创建一个新的 应用实例 import { createApp } from vueconst app createApp({/* 根组件选项 */ })根组件 我们传入 createApp 的对象实际上是一个组件,每个应用都需要一个“根组件”,其他组件…

HarmonyOS NEXT 使用XComponent + Vsync 实现自定义动画

介绍 XComponent 提供了应用在 native 侧调用 OpenGLES 图形接口的能力,本文主要介绍如何配合 Vsync 事件,完成自定义动画。在这种实现方式下,自定义动画的绘制不在 UI 主线程中完成,即使主线程卡顿,动画效果也不会受…

【Camera Sensor Driver笔记】二、点亮指南之Sensor Module XML

Camera Sensor module XML详解: cameraId 与 slot id 一一对应 (即:dtsi中相对应的sensor的 cell-index ) moduleName 模组厂名称 sensorName sensor 名称 actuatorName 马达名称 oisName …

Xavier 初始化

Xavier 初始化 为什么在 W [ l ] n p . r a n d o m . r a n d n ( s h a p e ) n p . s q r t ( 1 n [ l − 1 ] ) W^{[l]}np.random.randn(shape)\times np.sqrt(\frac{1}{n^{[l-1]}}) W[l]np.random.randn(shape)np.sqrt(n[l−1]1​) 中需要乘以 n p . s q r t ( 1 n […