• 云安全之身份认证与授权机制介绍


    认证与授权技术概述

    认证,用于证实某事是否真实或有效的过程。认证一般由标识(ldentification)和鉴别(Authentication)两部分组成。

    认证技术分类

    身份认证:口令认证、生物特征识别

    报文认证:报文源的认证、报文宿的认证、报文内容的认证

    认证技术依据

    1. 所知道的秘密信息(Something You Know):实体(声称者)所掌握的秘密信息,如用户口令验证码等。
    2. 所拥有的实物凭证(Something You Have): 实体(声称者)所持有的不可伪造的物理设备,如智能卡、U盾等
    3. 所具有的生物特征:实体(声称者)所具有的生物特征,如指纹、声音、虹膜、人脸等
    4. 所表现的行为特征:实体(声称者)所表现的行为特征,如鼠标使用习惯、键盘敲键力度、地理位置等

    授权技术

    授权,在主体身份得到认证后,赋予该用户进行文件和数据等操作的权限,如读、写、执行及从属权等。

    AAA认证架构

    AAA概念

    AAA是认证(Authentication)、授权 (Authorization)和计费(Accounting)的简称,是网络安全中进行访问控制的一种安全管理机制,提供认证、授权和计费三种安全服务。

    认证:确认访问网络的用户身份,判断访问者是否为合法的网络用户

    授权:对不同用户赋予不同的权限,限制用户可以使用的服务。

    计费:记录用户使用网络服务时的所有操作,包括使用的服务类型、起始时间、数据流量等,作为对用户使用网络的行为进行监控和计费的依据。

    AAA应用

    AAA通过对服务器的详细配置,可以对多中国服务提供安全保证;

    支持FTP、TELNET、PPP、端口接入等

    AAA常用协议

    在AAA服务器上实现认证、授权、计费应用的协议主要包括RADIUS和TACACS+协议(华为称HWTACACS),Diameter协议作为新的标准也在逐步推广使用。

    AAA应用模式

    认证模式:AAA支持本地认证、不认证、RADIUS认证和TACACS+认证模式,并允许组合使用,组合认证模式是有先后顺序的。认证模式缺省使用本地认证。

    授权模式:AAA支持本地授权、不授权和TACACS+授权模式,并允许组合使用,组合授权模式有先后顺序。授权模式缺省使用本地授权。RADIUS的认证和授权是绑定在一起的,所以不存在RADIUS授权模式。

    计费模式:AAA支持不计费、RADIUS计费、TACACS+计费模式

    RADIUS与TACACS+

    RADIUS协议简介

    RADIUS (Remote Authentication Dial-In User Service,远程认证拨号用户服务)是一种分布式的、客户端/服务器结构的信息交互协议,能保护网络不受未授权访问的干扰,常应用在既要求较高安全性、又允许远程用户访问的各种网络环境中。该协议定义了RADIUS的报文格式及其消息传输机制,并规定使用UDP作为封装RADIUS报文的传输层协议(UDP端口1812、1813分别作为认证、计费端口)。

    RADIUS协议:客户端/服务器模式

    客户端:RADIUS客户端一般位于NAS上,可以遍布整个网络,负责传输用户信息到指定的RADIUS服务器,然后根据从服务器返回的信息进行相应处理(如接受/拒绝用户接入)。

    服务器:RADIUS服务器一般运行在中心计算机或工作站上,维护相关的用户认证和网络服务访问信息,负责接收用户连接请求并认证用户,然后给客户端返回所有需要的信息(如接受/拒绝认证请求)

    RADIUS协议:安全和认证机制

    RADIUS客户端和RADIUS服务器之间认证消息的交互是通过共享密钥的参与来完成的,并且共享密钥不能通过网络来传输,增强了信息交互的安全性。另外,为防止用户密码在不安全的网络上传递时被窃取,在传输过程中对密码进行了加密。

    RADIUS服务器支持多种方法来认证用户,如基于PPP的PAP、CHAP认证

    RADIUS协议:消息交互过程

    RADIUS协议:报文结构

    RADIUS采用UDP报文来传输消息,通过定时器管理机制、重传机制、备用服务器机制,确保RADIUS服务器和客户端之间交互消息的正确收发。

    RADIUS协议:扩展属性

    RADIUS协议具有良好的可扩展性,协议 (RFC2865)中定义的26号属性(Vendor-Specific)用于设备厂商对RADIUS进行扩展,以实现标准RADIUS没有定义的功能

    TACACS+协议简介

    TACACS+ (Terminal Access Controller Access Control System,终端访问控制器控制系统协议)是在TACACS协议的基础上进行了功能增强的安全协议。该协议与RADIUS协议的功能类似,采用客户端/服务器模式实现NAS与TACACS+服务器之间的通信。

    TACACS+协议:消息交互过程

    TACACS+协议:报文结构

    所有的TACACS+数据包都使用12字节长的包头,结构如下

    TACACS+协议:报文类型

    TACACS+共有7种类型的消息

    认证:

    1、Authentication_START

    2、Authentication_CONTIUNE

    3、Authentication_REPLY

    授权

    4、Authorization_REQUEST

    5、Authorization_RESPONSE

    计费:

    6、Accounting_REQUEST

    7、Accounting_RESPONSE

     

    RADIUS与TACACS+协议区别

    RADIUS协议

    • 使用UDP,网络传输效率更高;
    • 只对验证报文中的密码字段进行加密;
    • 协议报文比较简单,认证和授权结合,难以分离;
    • 不支持对设备的配置命令进行授权使用,用户登录设备后可以使用的命令行由用户级别决定,用户只能使用缺省级别等于/低于用户级别的命令行

    TACACS+协议

    • 使用TCP,网络传输更可靠;
    • 除了TACACS+报文头,对报文主体全部进行加密;
    • 协议报文较为复杂,认证和授权分离,使得认证、授权服务可以分离在不同的安全服务器上实现。例如,可以用一个TACACS+服务器进行认证,另外一个TACACS+服务器进行授权;
    • 支持对设备的配置命令进行授权使用。用户可使用的命令行受到用户级别和AAA授权的双重限制,某一级别的用户输入的每一条命令都需要通过TACACS+服务器授权,如果授权通过,命令就可以被执行
  • 相关阅读:
    Linux MQTT智能家居(MQTT框架)
    Linux shell编程学习笔记22: () $() (()) 的用法小结
    Java的JDBC编程
    AI在工业机器人系统中的应用
    Acwing 906. 区间分组
    三、Zabbix — 自定义监控
    EasyRecovery数据恢复软件中文版免费下载v15.0绿色版
    【Asp.net】Asp.net core中IIS配置注意事项
    Flutter SQLite 教程之笔记App 数据存储CRUD操作基于 Flutter Sqflite 插件
    值得收藏的30道Python练手题(附详解)
  • 原文地址:https://blog.csdn.net/wenzhongxiang/article/details/133388810