IAM、EIAM、CIAM、RAM、IDaaS 都是什么?

后端程序员在做 ToB 产品或者后台系统时,都不可避免的会遇到账号系统、登录系统、权限系统、日志系统等这些核心功能。这些功能一般都是以 SSO 系统、RBAC 权限管理系统等方式命名,但这些系统合起来有一个专有名词:IAM

IAM

IAMIdentity and Access Management 的缩写,即身份与访问管理,或称为身份管理与访问控制,或称为身份管理。

IAM 的基础上还继续发展为 EIAMCIAMRAMIDaaS 几类。

EIAM

EIAMEmployee Identity and Access Management 的缩写,即企业身份与访问管理,主要解决企业内部员工、合作伙伴、临时人员等提供统一身份认证和权限管理能力的内部产品。

CIAM

CIAMCustomer Identity and Access Management 的缩写,即客户身份与访问管理,主要解决企业外部客户(主要是互联网海量用户)的统一身份认证和权限管理能力的外部产品。

RAM

RAMResource and Access Management 的缩写,即资源与访问管理,RAM 其实就是云厂商的 IAM,主要解决云客户管理云资源的访问控制。

阿里云的 RAM 用户登录。
在这里插入图片描述

IDaaS

互联网行业最不缺的就是造新名词,云计算刚出来的时候就有各种 IaaSPaaSSaaS 的概念。最近几年微服务盛行后又出来了 BaaSFaaS 等相关概念。

IaaS:基础设施即服务,Infrastructure as a service
PaaS:平台即服务,Platform as a service
SaaS:软件即服务,Software as a service
BaaS:后端即服务,Backend as a Service
FaaS:函数即服务,Functions as a Service

参考文章:

  1. IaaS、PaaS、SaaS 都是什么?
  2. BaaS、FaaS、Serverless 都是什么?

IDaaS 身份即服务(IDentity as a Service),即将 EIAMCIAM 上云并做成一个独立 SaaS 产品来卖,通俗的理解就是 IDaaS = EIAM + CIAM + SaaS

无论怎么变,这些概念最核心的东西还是 IAM,所以理解了 IAM 的概念其他概念也就一通百通了。

IAM 一般包含如下五部分,称为 5A

  • 账号(Account)
  • 认证(Authentication)
  • 权限(Authorization)
  • 应用(Application)
  • 审计(Audit)

账号

账号是用户在系统中的数字化载体,用于标识用户并访问受保护的资源,一般每个系统都会有账号,且不同系统的账号数据结构各异。

认证

认证是一种信用保证形式,认证是用于确定上述账号在申请访问资源时是否是有效。

授权

权限本质上是限制,授权是将权限授予给用户,从而使得用户获得访问资源的权限。

应用

应用可以简单的理解为所有的业务系统,这些业务系统应该是上文中账号、认证、授权的交互对象和载体。

审计

审计本质上就是日志,日志需要记录用户的所有操作,包括主体、操作、客体、类型、时间、地点、结果等内容。根据不同的维度可以划分为不同的日志,如操作日志、登录日志、业务日志、系统日志等。

参考文章:
https://www.woshipm.com/it/4681031.html
https://www.zhihu.com/question/47888930

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

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

相关文章

一线大厂Redis高并发缓存架构实战与性能优化

多级缓存架构 缓存设计 缓存穿透 缓存穿透是指查询一个根本不存在的数据, 缓存层和存储层都不会命中, 通常出于容错的考虑, 如果从存储层查不到数据则不写入缓存层。 缓存穿透将导致不存在的数据每次请求都要到存储层去查询, 失…

基于springboot 的 Ajax-fetchget post Axios-get post

Fetch Fetch API 提供了一个 JavaScript 接口,用于访问和操纵 HTTP 管道的一些具体部分,例如请求和响应。它还提供了一个全局 fetch() 方法,该方法提供了一种简单,合理的方式来跨网络异步获取资源。 这种功能以前是使用 XMLHttpRe…

9.14 C++作业

仿照vector手动实现自己的myVector&#xff0c;最主要实现二倍扩容功能 #include <iostream>using namespace std;template <typename T> class Myvector {T *data; //存储数据的数组int len; //当前数组的长度int mycapa; //容纳数据的总容量public://…

docker镜像管理-实操

一.docker镜像管理 1.拉取镜像 docker image pull <repository>:<tag> 镜像名称和标签使用 : 进行分隔&#xff0c;如果省略了标签&#xff0c;则默认为 latest docker image pull nginx:latest 或者docker pull nginx:latest 拉取下来的镜像默认保存在&#xff1…

Android kotlin系列讲解(进阶篇)解析XML格式数据

点击查看>返回总目录< | 上一篇:Android kotlin系列讲解(入门篇)使用HTTP访问网络 文章目录 1、Pull解析方式2、SAX解析方式 通常情况下,每个需要访问网络的应用程序都会有一个自己的服务器,我们可以向服务器提交数据,也可以从服务器上获取数据。不过这个时…

GO语言篇之文件操作

GO语言篇之文件操作 文章目录 GO语言篇之文件操作前言使用总结 前言 Go语言提供了丰富的操作文件的函数&#xff0c;这为我们开发者减少了不少负担 使用 // 打开文件 file, err : os.Open("filepath") if err ! nil {panic(err) }// 关闭文件&#xff0c;每次该文…

Ubuntu下Nginx配置ModSecurity详细思路及过程

下面是一个简介&#xff1a; Ubuntu是一个linux操作系统&#xff0c;Nginx是一个web服务器软件&#xff0c;ModSecurity是一款开源的web应用防火墙&#xff08;江湖人称“WAF”&#xff09;。 如果上面的概念没有一定的了解&#xff0c;下面的内容其实也能看。就是不好操作。…

浅谈C++|模板篇

一.模板模板概念 模板就是建立通用的模具&#xff0c;大大提高复用性 模板的特点&#xff1a; 1.模板不可以直接使用&#xff0c;它只是一个框架 2.模板的通用并不是万能的 C另一种编程思想称为泛型编程&#xff0c;主要利用的技术就是模板。 C提供两种模板机制:函数模板和类模…

宋浩概率论笔记(八)假设检验

宋浩系列全系列的最后一更&#xff01; 本章考察频率很低&#xff0c;核心在于记忆检验不同参数时用到的分布~

【项目实战】【已开源】USB2.0 HUB 集线器的制作教程(详细步骤以及电路图解释)

写在前面 本文是一篇关于 USB2.0 HUB 集线器的制作教程&#xff0c;包括详细的步骤以及电路图解释。 本文记录了笔者制作 USB2.0 HUB 集线器的心路历程&#xff0c;希望对你有帮助。 本文以笔记形式呈现&#xff0c;通过搜集互联网多方资料写成&#xff0c;非盈利性质&#xf…

许战海战略文库|品类缩量时代:制造型企业如何跨品类打造份额产品?

所有商业战略的本质是围绕着竞争优势与竞争效率展开的。早期&#xff0c;所有品牌立足于从局部竞争优势出发。因此,品牌创建初期大多立足于单个品类。后期增长受限,就要跨品类持续扩大竞争优势&#xff0c;将局部竞争优势转化为长期竞争优势&#xff0c;如果固化不前很难获得增…

Spark【Spark SQL(四)UDF函数和UDAF函数】

UDF 函数 UDF 是我们用户可以自定义的函数&#xff0c;我们通过SparkSession对象来调用 udf 的 register&#xff08;name&#xff1a;String&#xff0c;func&#xff08;A1,A2,A3...&#xff09;&#xff09; 方法来注册一个我们自定义的函数。其中&#xff0c;name 是我们自…

腾讯mini项目-【指标监控服务重构】2023-07-19

今日已办 OpenTelemetry Logs 通过日志记录 API 支持日志收集 集成现有的日志记录库和日志收集工具 Overview 日志记录 API - Logging API&#xff0c;允许您检测应用程序并生成结构化日志旨在与其他 telemerty data&#xff08;例如metric和trace&#xff09;配合使用&am…

Java代码审计16之fastjson反序列化漏洞(1)

文章目录 1、简介fastjson2、fastjson的使用2.1、将类序列化为字符串2.2、将字符串还原为对象2.3、小结以上2.4、稍微扩展思路 3、fastjson漏洞利⽤原理与dnslog4、JdbcRowSetImpl利用链4.1、JdbcRowSetImpl的基本知识4.2、利用代码复现4.3、生成poc4.4、模拟真实场景4.5、利用…

MongoDB差异数据对比的快速指南

MongoDB是一种非关系型数据库&#xff0c;它以灵活的 JSON-like 文档的形式存储数据&#xff0c;这种特性使其在处理大量数据和实现快速开发时更具有优势。而由于其灵活的数据模型和强大的性能&#xff0c;MongoDB 被广泛应用在各种业务场景中。随着业务的发展和数据的增长&…

kafka 3.5 生产者在把数据推送到服务端,再到落盘的过程中,怎么保证不丢失数据源码

一、生产者客户端配置参数acks说明1、acks12、acks03、acks-1 二、请求在写入Leader的数据管道之前&#xff0c;则会验证Leader的ISR副本数量和配置中的最小ISR数量1、Leader的ISR小于配置文件中minInSyncReplicas&#xff0c;并且acks-1&#xff0c;则抛异常2、如果acks不等于…

Excel VLOOKUP 初学者教程:通过示例学习

目录 前言 一、VLOOKUP的用法 二、应用VLOOKUP的步骤 三、VLOOKUP用于近似匹配 四、在同一个表里放置不同的VLOOKUP函数 结论 前言 Vlookup&#xff08;V 代表“垂直”&#xff09;是 excel 中的内置函数&#xff0c;允许在 excel 的不同列之间建立关系。 换句话说&#x…

iPhone苹果15手机怎么看是国行还是美版或港版的苹果iPhone15手机?

iPhone苹果手机15机型区域版本识别代码 CH代码为国行 LL代码为美版 ZP代码为港版 iPhone苹果15手机怎么看是国行还是美版或港版的苹果iPhone15手机&#xff1f; 1、打开苹果iPhone15手机桌面上的「设置」&#xff1b; 2、在iPhone苹果15手机设置内找到「通用」并点击打开&…

大型游戏动作竞技游戏开发和体感VR/AR游戏开发:创造引人入胜的虚拟世界

大型游戏动作竞技游戏和体感VR/AR游戏都代表了游戏开发领域的最新趋势。它们提供了高度沉浸式的娱乐体验&#xff0c;结合了视觉、听觉和体感互动。在本文中&#xff0c;我们将探讨如何开发这两种类型的游戏&#xff0c;并介绍其关键特点和开发流程。 大型游戏动作竞技游戏的特…

Spring学习 (一): IoC容器

前言 参考 廖雪峰Spring教程 一、什么是IoC容器 容器的意思可以理解为一个提供供程序正常运行&#xff0c;提供各种依赖的组件的包的环境。 IoC&#xff0c;控制反转&#xff0c;实际上就是将原本由代码编写者控制的各个对象&#xff08;组件&#xff09;的生命周期托管给底…