AAA认证、授权、计费

AAA是验证、授权和记账(Authentication、Authorization、Accounting )三个英文单词的简称。其主要目的是管理哪些用户可以访问网络服务器,具有访问权的用户可以得到哪些服务,如何对正在使用网络资源的用户进行记账。具体为:
           1、 验证(Authentication): 验证用户是否可以获得访问权限;
           2、 授权(Authorization) : 授权用户可以使用哪些服务;
           3、 记账(Accounting) : 记录用户使用网络资源的情况。

目前RADIUS(Remote Authentication Dial In  User Service)协议是唯一的AAA标准,在IETF的RFC 2865和2866中定义的。RADIUS 是基于 UDP 的一种客户机/服务器协议。RADIUS客户机是网络访问服务器,它通常是一个路由器、交换机或无线访问点。RADIUS服务器通常是在UNIX或Windows 2000服务器上运行的一个监护程序。RADIUS 协议的认证端口是1812 ,计费端口是1813。

 

 

RADIUS协议的主要特点

概括的来说,RADIUS 的主要特点如下:

1、 客户/服务模式(Client/Server)
       RADIUS是一种C/S结构的协议,它的客户端最初就是网络接入服务器NAS(Network Access Server),现在运行在任何硬件上的RADIUS客户端软件都可以成为RADIUS的客户端。客户端的任务是把用户信息(用户名,口令等)传递给指定的RADIUS服务器,并负责执行返回的响应。
RADIUS服务器负责接收用户的连接请求,对用户身份进行认证,并为客户端返回所有为用户提供服务所必须的配置信息。
一个RADIUS服务器可以为其他的RADIUS Server或其他种类认证服务器担当代理。

2、 网络安全
    客户端和RADIUS服务器之间的交互经过了共享保密字的认证。另外,为了避免某些人在不安全的网络上监听获取用户密码的可能性,在客户端和RADIUS服务器之间的任何用户密码都是被加密后传输的。

3、 灵活的认证机制
      RADIUS服务器可以采用多种方式来鉴别用户的合法性。当用户提供了用户名和密码后,RADIUS服务器可以支持点对点的PAP认证(PPP PAP)、点对点的CHAP认证(PPP CHAP)、UNIX的登录操作(UNIX Login)和其他认证机制。

4. 扩展协议
    所有的交互都包括可变长度的属性字段。为满足实际需要,用户可以加入新的属性值。新属性的值可以在不中断已存在协议执行的前提下自行定义新的属性。

RADIUS的工作过程

RADIUS协议旨在简化认证流程。其典型认证授权工作过程是:
1、用户输入用户名、密码等信息到客户端或连接到NAS;
2、客户端或NAS产生一个“接入请求(Access-Request)”报文到RADIUS服务器,其中包括用户名、口
   令、客户端(NAS)ID 和用户访问端口的ID。口令经过MD5算法进行加密。
3、RADIUS服务器对用户进行认证;
4、若认证成功,RADIUS服务器向客户端或NAS发送允许接入包(Access-Accept),否则发送拒绝加接
     入包(Access-Reject);
5、若客户端或NAS接收到允许接入包,则为用户建立连接,对用户进行授权和提供服务,并转入6;若
     接收到拒绝接入包,则拒绝用户的连接请求,结束协商过程;
6、客户端或NAS发送计费请求包给RADIUS服务器;
7、RADIUS服务器接收到计费请求包后开始计费,并向客户端或NAS回送开始计费响应包;
8、用户断开连接,客户端或NAS发送停止计费包给RADIUS服务器;
9、RADIUS服务器接收到停止计费包后停止计费,并向客户端或NAS回送停止计费响应包,完成该用户的
   一次计费,记录计费信息。

流媒体中的AAA系统

       AAA服务器是本流媒体系统中非常重要的一个部分,它完成接入认证、授权以及计费的功能。目前,由于RADIUS协议仍然是唯一的AAA协议标准,因此我们的系统中AAA服务器的实现仍采用RADIUS协议,实现RADIUS协议中提供的AAA服务功能。同时系统提供用户和计费信息的存储与管理等功能。
   我们的AAA系统主要包括认证、计费服务器外,还包括用户和计费信息的存储、用户和计费策略管理等。在整个AAA系统中,RADIUS服务器之间以及RADIUS认证服务器与客户端通讯遵循RADIUS协议标准;用户信息和计费信息保存在 MySQL 数据库中。

1、 用户认证
    用户在申请享受服务时,需要得到用户信息的认证。在本系统中,客户端发送AAA认证数据包给服务器,数据包包含用户ID和password,服务器对数据包进行验证给出结果。验证过程加密传输。

2、 用户服务授权
    在本系统中,不同的用户可以享受不同的服务。AAA服务器在通过用户的认证请求后,按照该用户的权限来决定用户是否可以享受申请的服务内容。

3、 服务计费
    系统提供基本的计费信息和计费算法,支持一定的计费策略,并保存计费过程产生的中间数据。系统达到实时计费的要求。计费的最小单位为分,并且能够保证用户不会透支费用。

4、 用户信息管理
    主要功能包括用户注册、费用管理查询、权限设置等。管理平台可以对用户信息数据库和计费信息数据库进行管理。一般用户只能查询本帐号的基本情况,如用户基本信息和帐户余额,可修改本人的基本信息;管理员能查询和修改用户的基本信息、为用户充值、查询用户余额、完成计费策略的编辑、访问和修改。

 

 

认证、授权和计费(AAA)这种结构,是用来智能化地控制访问计算机网络资源,强制执行某些措施、审计使用情况以及向付费服务提供必要的信息。这些整合过程对于有效实现网络管理和安全方面是非常重要的。某些时候人们将 AAA 与审计(auditing)相结合,因此又称之为 AAAA。

认证是指确认终端用户或设备(如主机、服务器、交换机、路由器等等)所宣称的身份的过程。认证是通过提供身份和凭证来完成的。此处凭证是各种各样的。诸如,密码、一次性令牌、数字证书及电话号码(呼叫方/被呼叫方)。

授权是指授予用户、用户群、系统或某一进程访问权限,它以用户各自的认证、请求的服务以及当前系统状态为前提。授权基于一定的限制,如白天限制、物理位置限制或反对相同用户多次登录的限制等。授权决定了授予用户服务的特征。如包括了各种服务,但又不仅限于:IP地址过滤、地址分配、路径分配、QoS /差分服务、带宽控制/流量管理、特定终点的强制隧道、以及加密术。

计费是指创建哪个用户或执行什么特定行为的方法,如跟踪用户链接、日志系统用户等。计费信息可能用于实现管理、规划、计量或其它目标。实时计费(Real-time accounting)是指计费信息与资源消耗并发传送的方式。分批计费(Batch accounting)是指计费信息在随后传送之后才被保存的方式在计费中。通常收集的信息包括:用户身份、提供服务的性质、服务开始和结束的时间。

审计是指对一个组织、系统、进程、项目或产品的评估。实施审计的主要是为了确定信息的有效性和可靠性,以及提供系统内部控制评估。

为实现在AAA(AAAA)结构中的目标,多种相关技术和协议已被定义。下面列出了其中的部分 AAA 技术和协议:

  • CHAP:挑战握手认证协议;
  • DIAMETER 协议:为替代 RADIUS 而制定的协议;
  • EAP:扩展认证协议;
  • Kerberos
  • MS-CHAP (MD4)
  • PAP:密码认证协议;
  • PEAP:受保护的扩展认证协议;
  • RADIUS:远程用户拨入认证系统
  • TACACS/TACACS+:终端访问控制器访问控制系统

认证、授权、计费(AAA)结构

认证、授权、计费(AAA)结构

相关术语:AAA、AAAA、认证(Authentication)、授权(Authorization)、计费(Accounting)、审计(Auditing)、RADIUS、DIAMETER、TACACS、TACACS+、EAP、MD4、MS-CHAP、CHAP、PAP、PEAP

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值