网络安全 频道

创新USB密钥 YubiKey实现双因素验证

  在“Branch Rules”下选择“Add Branch Rule”

  更新Branch Rule的设置:

    1. 名称:YubiKey Serial Match
    2. 表达式“expr { [string first [mcget {session.custom.yubikey.modhex}] [mcget {session.logon.last.yubiotp}]] == 0 }

  选择“完成”,然后保存。

MODHEX 编码iRule

  在YubiKey MODHEX Encode对象后面的YubiKey Serial Match上,添加一个Variable Assign对象。

  这一步会把YubiCloud Auth ID 分配到“session.logon.last.username”,并把登录页面上的YubiKey OTP分配给“session.logon.last.password”。这些会话变量随后被分配到之前创建的HTTP Auth AAA对象aaa_yubicloud所使用的id和otp HTTP参数。

  提供下列属性:

  名称:Assign YubiCloud Variables

  选择“Add new entry”>>”change” 添加变量分配。

  变量赋值1:

    1. 自定义变量:session.logon.last.username
    2. 自定义表达式:expr{“1111”} (把1111改为你的YubiCloud Auth ID)

  变量赋值2:

    1. 自定义变量:session.logon.last.password
    2. 自定义表达式:expr { [mcget {session.logon.last.yubiotp}] }

  选择“完成”,然后保存。Branch Rules使用默认设置。

MODHEX 编码iRule

  在“Assisign YubiCloud Variables”对象的“fallback”分支上,添加一个“HTTP Auth”对象

  这样可以把HTTP Get发送到YubiCloud API 以验证登录页面的YubiKey OTP。

  提供下列属性:

    1. 名称:YubiCloud Auth
    2. AAA Server:/Common/aaa_yubicloud

MODHEX 编码iRule

  Branch Rules使用默认设置。保存退出。

  这样就媲美访问策略了。它应该和下图类似:

MODHEX 编码iRule

  接下来把“访问配置文件”附加到虚拟服务器做测试。

  结论

  这是通过APM轻松添加双因素验证的典型案例。F5提供了一个10人同时使用的APM试验版本,且每个BIG-IP都颁发了LTM许可证。

0
相关文章