IEC 62351-8规定,基于角色的访问控制用于根据用户角色减少和限制用户对系统的访问。
这个概念是执行用户需要对自己进行身份验证的操作(用户名/密码),并拥有具有正确访问权限的角色。
我们如何在Radius / Freeradius中实现它?
据我所知,Radius可以根据用户/密码进行身份验证,但默认情况下不会提供用户要求权限的角色/组的指示。
例如,如果我的用户同时拥有运营商和安全管理员角色,他们将如何申请安全管理员角色?
我认为这与属性有关,但没有明显的属性可以做到这一点
答案 0 :(得分:0)
遇到同样的问题,这是我将使用的解决方案:
Radius定义Vendor-Specific属性,其中可以存储有关角色等的信息。
我在这里找到了一个例子: https://www.researchgate.net/publication/317167505_Handling_Role-based_Access_Control_in_the_Digital_Grid 建议供应商特定类型建立如下:
BEGIN-VENDOR IEC
ATTRIBUTE RoleID 1整数
ATTRIBUTE roleDefinition 2 string
ATTRIBUTE AoR 3 string
ATTRIBUTE修订版4整数
ATTRIBUTE ValidFrom 5 string
ATTRIBUTE ValidTo 6 string
End-VENDOR IEC
在数字网格中处理基于角色的访问控制(PDF下载可用)。可从:https://www.researchgate.net/publication/317167505_Handling_Role-based_Access_Control_in_the_Digital_Grid [2018年1月9日访问]。
这里有一个FreeRadius的dictonary文件示例,可以发送两个不同的标记(id 0和1),其中tokeId是从属性类型中计算出来的:
VENDOR International-Electrotechnical-Commission 41912
BEGIN-VENDOR International-Electrotechnical-Commission
ATTRIBUTE IEC62351-8-RoleID-0 1 integer
ATTRIBUTE IEC62351-8-roleDefinition-0 2 string
ATTRIBUTE IEC62351-8-aor-0 3 string
ATTRIBUTE IEC62351-8-revision-0 4 integer
ATTRIBUTE IEC62351-8-ValidFrom-0 5 string
ATTRIBUTE IEC62351-8-ValidTo-0 6 string
ATTRIBUTE IEC62351-8-RoleID-1 11 integer
ATTRIBUTE IEC62351-8-roleDefinition-1 12 string
ATTRIBUTE IEC62351-8-aor-1 13 string
ATTRIBUTE IEC62351-8-revision-1 14 integer
ATTRIBUTE IEC62351-8-ValidFrom-1 15 string
ATTRIBUTE IEC62351-8-ValidTo-1 16 string
END-VENDOR International-Electrotechnical-Commission