AAA是Authentication(认证)、Authorization(授权)和Accounting(计费)的简称,提供了在NAS(Network Access Server,网络接入服务器)设备上配置访问控制的管理框架。
认证
确认访问网络的用户的身份,判断访问者是否为合法的网络用户。
AAA服务器将用户的身份验证凭据与存储在数据库中的用户凭据进行比较。如果凭据匹配,则身份认证成功,并且授予用户访问网络的权限。如果凭据不匹配,则身份认证失败,并且网络访问将被拒绝。用户的身份认证凭据通常使用:
- 密码
- 用户名和密码
- 数字证书
授权
对不同用户赋予不同的权限,限制用户可以使用的服务。
用户身份认证成功之后,通过授权来确定:
- 用户能够使用的命令
- 用户能够访问的资源
- 用户能够获取的信息
授权的基本原则是最小特权原则,即仅授予用户执行其所需功能时必须的权限,以此来防范任何轻率的授权可能导致的意外或恶意的网络行为。
计费
记录用户使用网络服务过程中的所有操作,包括使用的服务类型、起始时间、数据流量等,用于收集和记录用户对网络资源的使用情况,并可以实现针对时间、流量的计费需求,也对网络起到监视作用。
简单说就是:什么人、什么时间、做了什么事。
C/S架构:客户端运行在接入设备上,常被称为NAS设备,负责验证用户身份与管理用户接入;服务器是认证服务器、授权服务器和计费服务器的统称,负责集中管理用户信息。
AAA可以用多种方式实现,主要有本地方式、基于radius协议的方式和基于hwtacacs协议的方式。实际中最常使用的是基于RADIUS协议的方式。
本地方式
用户信息比如本地用户的用户名和密码和各种属性都配置在设备本