IBM Security Access Manager:通过基于上下文的访问保护网站

news/2024/5/12 0:44:31/文章来源:https://blog.csdn.net/cuyi7076/article/details/107153906

IBM Security Access Manager for Mobile(ISAM for Mobile)允许安全设计师通过IBM Security Access Manager for Web(ISAM for Web)对Web访问执行基于上下文的授权(CBA)决策(也称为基于风险的访问决策)。或WebSEAL)安全设备。 此设计中的一个重要考虑因素是,开发了一种Web安全体系结构,该体系结构在保持上下文相关的Web环境的同时最大程度地减少了风险计算的次数。

在本文中,我们描述了将ISAM for Web和ISAM for Mobile一起配置所需的体系结构和配置,以允许用户身份验证的CBA风险决定来保护Web资源(或整个站点)的集合。 该体系结构确保仅在必要时执行风险计算,而不是为每个后续访问请求执行风险计算。

图1概述了此体系结构。

图1.此解决方案的体系结构
该解决方案的架构

解决方案设计

为了配置此解决方案,必须具有以下组件:

  • Web设备的IBM Security Access Manager。 可以是硬件设备也可以是软件设备,最低要求是V8.0 Fixpack 1。 该设备应安装有配置有可用的运行WebSEAL反向代理实例的网络接口。
  • 用于移动设备的IBM Security Access Manager。 这可以是硬件或软件设备。 应在配置了网络接口的情况下安装和激活设备,而不进行进一步的配置。
  • 运行您要保护的站点的应用程序服务器。 该应用程序服务器还应具有某种形式的活动服务器页面,因为它将用作集成的一部分。 WebSphere,Tomcat或IIS是合适的。
  • 客户端浏览器和智能手机。 能够运行HMAC OTP生成器(例如Google Authenticator)以生成一次性密码的一种。

在这种情况下,我们有一个需要强身份验证的Web应用程序。 该Web应用程序将受到ISAM设备上的WebSEAL的保护。

样品申请

本文中使用的示例应用程序是一个名为Your Bank的模拟互联网银行网站。 该站点内有一个页面设计用于未经身份验证的访问,而页面仅用于身份验证的访问。 此设计在许多联机Web应用程序中很常见,并且使其成为适当的示例应用程序,以展示ISAM for Mobile的更强身份验证功能。

图2.银行网站首页
银行网站首页
图3.银行保护页面
银行保护页面

该网站的URL结构大致如表1所示。

表1.示例应用程序站点的URL结构
网址格式 目的
/银行/* 此文件夹下的URL设计用于常规银行客户的经过身份验证的访问。
/ * 网站核心的URL通常设计用于未经身份验证的用户访问。

在“ 下载”部分中,我们包括了两页等效的银行业务示例Web应用程序。 它适合在Tomcat上运行,也可以部署到WebSphere环境。

样本安全策略

您的银行具有以下安全政策要求:

  • 所有希望访问在线互联网银行功能的银行客户都必须使用用户名和密码进行身份验证。
  • 如果客户以前从未从注册的设备/浏览器访问该站点,则他们还必须使用一次性密码进行身份验证。
  • 用户通过OTP进行身份验证后,便会注册浏览器实例。

从本质上讲,此安全策略始终提高了银行客户的安全性,因为它始终需要使用二次身份验证的形式登录。在用户与站点的首次交互中,要求用户输入用户名和密码。一次性密码。

在此初始交互过程中,将对用户的浏览器进行指纹识别并注册。

在后续交互中,在用户输入用户名和密码之后,ISAM for Mobile中的CBA模块将用户的浏览器指纹与以前的交互进行比较。 如果指纹相同,则为用户提供第二因素身份验证。

这种方法为客户提供了更大的易用性,在这种情况下,他们只需要在注册新的浏览器或设备时提供OTP。 此步骤可以通过减少管理和交付OTP SMS策略的成本来节省组织资金。

配置步骤

现在,我们将详细介绍配置ISAM设备以满足安全方案所采取的步骤。

网络接口

使用这些设备,我们介绍了管理接口和应用程序网络接口的概念。 管理任务通过管理界面执行,而运行时通信通过应用程序界面执行。 这会在设备上创建逻辑网络隔离,并通过网络隔离提供更好的安全状态。

图4.网络接口端点
网络接口端点

ISAM设备

配置ISAM设备以使用本地策略服务器和本地注册表。 您可以使用远程LDAP和策略服务器,但是本文提供的示例假定使用的是本地服务器。

图5.配置了本地策略服务器和LDAP目录的ISAM设备
使用本地策略服务器和LDAP目录配置的ISAM设备

使用在应用程序网络接口上侦听的活动反向代理实例为ISAM设备配置。

图6.配置了WebSEAL反向代理实例的ISAM设备
配置了WebSEAL反向代理实例的ISAM设备

ISAM for Mobile基本配置

在本节中,我们将提供配置ISAM设备(外部授权服务插件)和ISAM移动设备(授权服务)之间连接的步骤。

主机名解析

由于此示例使用虚拟主机联结,因此需要使ISAM设备的应用程序接口的主机名localhost在网络DNS中可用,或者在MGA设备的主机文件中进行设置以进行配置。 为了在主机文件中设置值,请在MGA设备上导航至“ 管理系统设置”>“主机文件”并添加以下值:

  • 地址:10.166.1.14
  • 主机名:bank.test
图7.主机文件配置
主机文件配置

isamcfg配置工具

第二个配置步骤需要运行isamcfg工具。 该工具可以从ISAM移动设备运行,也可以从/ mga / tools / isamcfg下的“ 管理系统设置”>“文件下载”页面下载 。 对于此配置,我们将通过SSH命令行在ISAM for Mobile设备上本地运行它。

首先,使用PuTTY或等效于ISAM for Mobile管理界面的SSH。

图8.移动设备到ISAM的PuTTY终端会话
移动设备到ISAM的PuTTY终端会话

接下来,一旦出现菜单提示,请导航至配置工具:

isam8> isam
isam8:isam> mga
isam8:mga> config
Security Access Manager Autoconfiguration Tool Version 8.0.1.0 [20141203-1958]

配置工具启动后,首先选择同时配置Context-based AuthorizationAuthentication Service 。 这转化为使WebSEAL实例能够为CBA决策和OTP更强的身份验证调用用于移动设备的ISAM。

按照提示进行操作。 (您可以使用适合您的环境的详细信息替换粗体变量。)确保在配置工具中将Context-based AuthorizationAuthentication Service选择为[ X ]

isam8> isam
Select/deselect the capabilities you would like to configure by typing its number. 
Press enter to continue: [ X ] 1. Context-based Authorization[ X ] 2. Authentication Service[ X ] 3. API Protection
Enter your choice: <Press Enter>
Press 1 for Next, 2 for Previous, 3 to Repeat, C to Cancel: 1

提供有关ISAM设备的ISAM for Mobile管理界面的信息,并提供管理凭据。

Security Access Manager for Mobile Local Management Interface hostname: 10.150.27.149
Security Access Manager for Mobile Local Management Interface port [443]: 443
Security Access Manager for Mobile Appliance administrator user ID [admin]: admin
Security Access Manager for Mobile Appliance administrator password: <password> 
Testing connection to https://10.150.27.149:443/.
SSL certificate information: Issuer DN: CN=isam4m Subject DN: CN=isam4m
SSL certificate fingerprints: MD5: 7A:93:EB:F4:65:EA:F3:A2:10:37:CD:88:C3:52:FC:3DSHA1: 2A:A2:29:DB:E9:38:C5:0E:ED:27:35:95:0E:F1:B3:06:C6:E2:0D:E9
SSL certificate data valid (y/n): y
Press 1 for Next, 2 for Previous, 3 to Repeat, C to Cancel: 1
Web Gateway Appliance Local Management Interface hostname: 10.150.27.149
Web Gateway Appliance Local Management Interface port [443]: 443
Web Gateway Appliance administrator user ID [admin]: admin
Web Gateway Appliance administrator password: <password>
Testing connection to https://10.150.27.149:443/.
SSL certificate information: Issuer DN: CN=isam4wSubject DN: CN=siam4w
SSL certificate fingerprints: MD5: 7E:88:5C:FA:F6:E3:5C:12:D5:72:64:EF:F3:4C:AA:83SHA1: BB:EA:97:55:25:DC:67:64:01:35:79:F7:E6:27:E0:97:90:A9:1A:84SSL certificate data valid (y/n): y
Instance to configure: 1. wga 2. Cancel
Enter your choice [1]: 1
Press 1 for Next, 2 for Previous, 3 to Repeat, C to Cancel: 1
Security Access Manager administrator user ID [sec_master]: sec_master
Security Access Manager administrator password: <password>
Security Access Manager Domain Name [Default]: <press Enter to select the default>
Press 1 for Next, 2 for Previous, 3 to Repeat, C to Cancel: 1

提供有关ISAM for Mobile设备的应用程序界面的信息,包括CBA授权决策Web服务(我们之前测试的同一Web服务)的用户名和密码。

Security Access Manager for Mobile application interface hostname: localhost
Security Access Manager for Mobile application interface port: 443
Select the method for authentication between WebSEAL and the Security Access Manager for Mobile application interface:1. Certificate authentication 2. User-id/password authentication
Enter your choice [1]: 2
Security Access Manager for Mobile application interface user ID: easuser
Security Access Manager for Mobile application interface password: passw0rd <this is the default out-of-the-box password>
Testing connection to https://localhost:443.
Connection completed.
SSL certificate information: Issuer DN: CN=isam, O=ibm, C=us Subject DN: CN=isam, O=ibm, C=us
SSL certificate fingerprints: MD5: 79:23:E3:5D:27:DC:66:2B:D2:C5:43:93:10:C4:3E:3FSHA1: F8:08:49:4A:47:CF:92:C2:54:29:EF:24:59:DD:7A:9E:D6:E0:1F:81SSL certificate data valid (y/n): y
Automatically add CA certificate to the key database (y/n): y
Restarting the WebSEAL server...
Press 1 for Next, 2 for Previous, 3 to Repeat, C to Cancel: 1
Press 1 for Next, 2 for Previous, 3 to Repeat, C to Cancel: 1
The following files are available on the Web Gateway Appliance. Choose one for the '400 Bad Request'
response page.
1. oauth_template_rsp_400_bad_request.html
2. oauth_template_rsp_401_unauthorized.html
3. oauth_template_rsp_502_bad_gateway.html
Enter your choice [1]: 1
The following files are available on the Web Gateway Appliance. Choose one for the '401 Unauthorized'
response page.
1. oauth_template_rsp_400_bad_request.html
2. oauth_template_rsp_401_unauthorized.html
3. oauth_template_rsp_502_bad_gateway.html
Enter your choice [1]: 2
The following files are available on the Web Gateway Appliance. Choose one for the '502 Bad Gateway'
response page.
1. oauth_template_rsp_400_bad_request.html
2. oauth_template_rsp_401_unauthorized.html
3. oauth_template_rsp_502_bad_gateway.html
Enter your choice [1]: 3
Press 1 for Next, 2 for Previous, 3 to Repeat, C to Cancel: 1
The junction /mga contains endpoints that require Authorization HTTP header to be forwarded to the backend
server.
Do you want to enable this feature? [y|n]? y

isamcfg工具现在将配置WebSEAL ACL和EAS POP。

URLs allowing unauthenticated access: https://localhost/mga/sps/static
URLs allowing all authenticated users access: https://localhost/mga/sps/ac https://localhost/mga/sps/xauth https://localhost/mga/sps/mga/user/mgmt/html https://localhost/mga/sps/mga/user/mgmt/device https://localhost/mga/sps/mga/user/mgmt/otp
Press 1 for Next, 2 for Previous, 3 to Repeat, C to Cancel: 1
-----------------------------------------------
Planned configuration steps:A junction to the Security Access Manager server will be created at /mga.The POP oauth-pop will be created.
The POP rba-pop will be created.ACLs denying access to all users will be attached to:/WebSEAL/isam8-wga/mgaACLs allowing access to all users will be attached to:/WebSEAL/isam8-wga/mga/sps/authsvc/WebSEAL/isam8-wga/mga/sps/xauth/WebSEAL/isam8-wga/mga/sps/authservice/authentication/WebSEAL/isam8-wga/mga/sps/oauth/oauth20/authorize/WebSEAL/isam8-wga/mga/sps/static/WebSEAL/isam8-wga/mga/sps/oauth/oauth20/session/WebSEAL/isam8-wga/mga/sps/oauth/oauth20/tokenACLs allowing access to all authenticated users will be attached to:/WebSEAL/isam8-wga/mga/sps/auth/WebSEAL/isam8-wga/mga/sps/ac/WebSEAL/isam8-wga/mga/sps/xauth/WebSEAL/isam8-wga/mga/sps/mga/user/mgmt/html/WebSEAL/isam8-wga/mga/sps/oauth/oauth20/clients/WebSEAL/isam8-wga/mga/sps/common/qr/WebSEAL/isam8-wga/mga/sps/mga/user/mgmt/device/WebSEAL/isam8-wga/mga/sps/mga/user/mgmt/questions/WebSEAL/isam8-wga/mga/sps/mga/user/mgmt/otp/WebSEAL/isam8-wga/mga/sps/mga/user/mgmt/grantEAI authentication will be enabled for the endpoints:/WebSEAL/isam8-wga/mga/sps/oauth/oauth20/session/WebSEAL/isam8-wga/mga/sps/auth/WebSEAL/isam8-wga/mga/sps/authservice/authentication/WebSEAL/isam8-wga/mga/sps/authsvcCertificate authentication will be disabled.HTTP-Tag-Value header insertion will be configured for the attributes:user_session_id=user_session_idPress 1 for Next, 2 for Previous, 3 to Repeat, C to Cancel: 1Beginning configuration...Attaching ACLs.
Creating ACL isam_mobile_nobody.
Creating ACL isam_mobile_unauth.
Creating ACL isam_mobile_rest.
Creating ACL isam_mobile_anyauth.
Creating junction /mga.Editing configuration file...
Disabling BA authentication.
Enabling forms authentication.Restarting the WebSEAL server...
Configuration complete.

注意:请确保等待大约30秒以使WebSEAL服务器重新启动,然后再进行下一步。

配置完成后,ISAM设备上的WebSEAL将具有:

  • 带有ACL的CBA和OTP组件的联结/ mga,允许适当的访问
  • 称为rba-pop的POP,可以附加到需要基于上下文的访问策略的资源上
  • 在HTTPS上配置了表单和EAI身份验证

配置ISAM移动版和ISAM Web策略服务器之间的通信。 这是将基于上下文的访问策略附加到ISAM的Web资源所必需的。 通过ISAM for Mobile控制台可以看到WebSEAL上定义的资源。 导航到“ 安全移动设置”>“访问控制” 。 单击资源 ,然后单击添加图标。

图9.查看并添加WebSEAL资源
查看和添加WebSEAL资源

控制台将提示您输入策略服务器管理凭据。 输入sec_master用户名及其密码。

图10.策略服务器登录详细信息
策略服务器登录详细信息

再次单击添加图标; 现在应该可以浏览WebSEAL对象空间中的资源。

图11.浏览WebSEAL资源
浏览WebSEAL资源

IBM Security Access Manager用户创建

在本节中,我们将提供在ISAM设备本地注册表中创建样本用户的步骤。

从先前步骤中使用的PuTTY终端,启动ISAM管理实用程序。 对于熟悉ISAM早期版本的用户,这也称为pdadmin 。 使用策略服务器管理员sec_master和配置的密码登录。

isam8> isam
isam8:isam> admin
pdadmin> login
Enter User ID: sec_master
Enter Password: <password>
pdadmin sec_master>

在本地ISAM设备注册表中创建测试用户testuser

pdadmin sec_master> user create testuser cn=testuser,dc=iswga testuser testuser passw0rd 
pdadmin sec_master> user modify testuser account-valid yes

注意:使用板载LDAP服务器时,后缀为dc=iswga 。 此后缀不能更改。

用于Web联结创建的ISAM

在本节中,我们将描述配置与示例应用程序的联结的步骤。 有多种替代机制可用于创建到Your Bank服务器的联结。 在示例环境中, 您的Bank Java™WAR文件已被部署为Tomcat上的ROOT应用程序。

ISAM设备通过此处显示的逻辑管理接口(LMI)引入了联结创建:

图12.通过LMI界面进行连接管理
通过LMI接口进行连接管理

使用LMI,通过导航到Secure Reverse Proxy Settings> Reverse Proxy来配置到应用程序服务器的虚拟主机联结。 选择要添加结点的实例,然后单击管理>结点管理 。 在显示的页面上,单击New> Virtual Junction 。 在“ 交汇点”选项卡下,在“ 交汇点名称”字段中输入标签

图13.创建一个虚拟主机联结,第1部分
创建虚拟主机联结,第1部分

在“ 服务器”选项卡下,添加托管“ 您的银行”站点的联结服务器(Tomcat或等效服务器)。 在测试环境中,Tomcat正在侦听位于10.166.1.14的服务器上的端口8080。 使用的虚拟主机将是localhost,在应用程序接口10.150.27.215上的WebSEAL端口80上侦听。 请注意,如果您使用的是支持Virtualhost的后端服务器,则应确保WebSEAL前端和后端服务器配置上的主机名和端口均匹配。

图14.创建一个虚拟主机联结,第2部分
创建虚拟主机联结,第2部分

配置联结以向用户名iv-user发送属性作为“ 身份”选项卡上的标头。

图15.创建一个虚拟主机联结,第3部分
创建虚拟主机联结,第3部分

完成后保存结。 现在,LMI应该显示为ISAM设备实例列出的两个联结。

图16.创建一个虚拟主机联结,完成
创建虚拟主机联结,完成

另外,仍然可以通过传统的admin( pdadmin )命令行界面来创建虚拟主机连接,该界面先前已用于用户创建步骤。

pdadmin sec_master> server task <WebSEAL instance> virtualhost create -t tcp -h 10.166.1.14 -p 8080 -v localhost -c iv-user -p 8080 bank
Created Virtual Host Junction at bank

此命令创建一个与我们的应用程序服务器的连接,并基于主机名localhost进行映射,并在iv-user标头中提供用户名。

主机文件或DNS配置

将条目添加到DNS服务器或本地测试客户端计算机的hosts文件中,以将ISAM设备应用程序接口映射到您定义的主机名localhost。

图17.主机文件示例
主机文件示例

ISAM for Web配置步骤

这种情况下需要对缺省WebSEAL配置文件进行许多更改。 请按照本节中的步骤更新配置。

首先,编辑配置文件:导航到Secure Reverse Proxy Settings> Reverse Proxy 。 单击反向代理实例,然后导航到管理>配置>编辑配置文件

图18.配置反向代理实例
配置反向代理实例

这将打开传统的WebSEAL配置文件。

图19. WebSEAL配置文件
WebSEAL配置文件

接下来,设置以下参数以启用此方案中使用的HTTP身份验证:

  1. 设置此选项可在HTTP上启用表单身份验证。
[forms]
#----------------------
# FORMS
#----------------------
# Enable authentication using the forms authentication mechanism
# One of <http, https, both, none>
forms-auth = both
  1. 设置此选项可在HTTP上启用EAI身份验证。
[eai]
#----------------------
# EXTERNAL AUTHENTICATION INTERFACE
#----------------------
# Enable EAI authentication.
#
# One of <http, https, both, none>
eai-auth = both

现在设置以下参数以启用此场景中使用的标准和虚拟主机联结的混合处理:

  1. 设置此选项以允许无需身份验证即可访问pkmslogout URL。
[acnt-mgt]...
#-----------------------------
# ALLOW UNAUTHENTICATED LOGOUT
#-----------------------------
# Set this parameter to 'yes' to allow unauthenticated users to be able
# to request the pkmslogout resource. If this parameter is set to 'no'
# an unauthenticated user will be requested to authenticate before the
# pkmslogout resource is returned.
allow-unauthenticated-logout = yes
  1. 设置此选项以允许通过虚拟主机联结访问标准联结/ mga。
[junction]
...
# Two separate junction tables are managed by WebSEAL, one for virtual host
# junctions, and the other for standard junctions. When a request is
# received the VHJ table is searched first, and if no match is found the
# table which manages the standard junctions is then searched. The following
# configuration item is used to reverse the search order so that the table
# which manages the standard junctions is searched before the VHJ table.
match-vhj-first = no
  1. 设置此选项可启用在标准联结和虚拟主机联结之间共享经过身份验证的会话。
[session]
...
# Enable a cookie based session to be shared across all standard and virtual
# host junctions on a single WebSEAL instance. This is achieved through
# enabling the WebSEAL instance to store a single session key as an
# independent value in a multi-valued domain cookie, indexed by the instance
# name. The domain cookie itself is shared across all participating WebSEAL
# instances, but the session values are specific to each instance.
#
# If WebSEAL exists in an environment where SMS already handles single
# sign-on across domains, do not enable this configuration item.
shared-domain-cookie = yes

最后,将更改保存到配置文件,部署更改,然后重新启动反向代理实例。

ISAM for Web安全策略

缺省情况下,WebSEAL将要求认证以访问受保护网站的任何部分。 以下命令将修改安全策略,以启用对应用程序根目录的未经身份验证的访问,并要求对受保护的银行页面进行身份验证的访问。 它还将允许未经身份验证的访问权限来访问CBA风险计算浏览器指纹的属性收集过程。

此外,我们还将经过身份验证的ACL附加到名为@bank的虚拟主机连接上的/ stepup /资源上,这是我们将用作CBA设计一部分的应用程序,稍后将进行详细介绍。

isam8> isam
isam8:isam> admin
pdadmin> login
Enter User ID: sec_master
Enter Password: <password> 
pdadmin sec_master> acl attach /WebSEAL/<WebSEAL instance>/@bank/ isam_mobile_unauth
pdadmin sec_master> acl attach /WebSEAL/<WebSEAL instance>/@bank/bank/ default-webseal
pdadmin sec_master> acl attach /WebSEAL/<WebSEAL instance>/@bank/stepup/ default-webseal
pdadmin sec_master> server replicate

使用此基本安全策略,如果我们导航到ISAM设备应用程序界面,则应显示Your Bank网站,而无需任何身份验证凭据,并且/ bank文件夹下的任何内容都将受到基于表单的身份验证的保护。

图20.通过WebSEAL连接的银行应用程序
通过WebSEAL联结的银行应用程序

接下来,我们将定义一个安全策略,该策略要求认证级别为2才能访问/ bank文件夹。 第一步是定义需要2级身份验证的受保护对象策略(POP)。

pdadmin sec_master> pop create level2
pdadmin sec_master> pop modify level2 set ipauth anyothernw 2

现在,我们将此附加到我们的银行资源中。

pdadmin sec_master> pop attach /WebSEAL/<WebSEAL instance>/@bank/bank level2

升压应用

通过配置访问银行站点所需的2级身份验证,我们现在必须配置一种机制,用户可以通过该机制获得2级证书。 为此,我们将使用一个非常简单的EAI JSP页面,该页面仅返回2级身份验证,而无需用户交互。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<%@page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" import="java.util.Enumeration"%>
<html>
<head>
<title>Stepup</title>
<meta http-equiv="pragma" content="no-cache" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<% String URL = request.getParameter("URL");String username = request.getHeader("iv-user");/* This is where the EAI returns the authenticated user, * and the higher level authentication credential. */ response.setHeader("am-fim-eai-user-id", username);response.setHeader("am-eai-auth-level", "2");if (URL != null) response.setHeader("am-fim-eai-redir-url", URL);%> </head> </html>

下载部分提供了一个包含此JSP页面的示例WAR文件。

通过将ISAM移动版的配置配置到ISAM设备中,已经为这些目的部分配置了WebSEAL EAI界面。 剩下两个步骤。

首先,将此应用程序URL设置为WebSEAL EAI触发器URL。 在ISAM设备管理界面上,导航到反向代理实例:

  1. 导航到安全反向代理设置>反向代理 。 选择反向代理实例,然后单击“ 编辑”
  2. 在“ 身份验证”选项卡上,为EAI应用程序添加新的触发器URL。
http://bank.test/stepup/*
图21.将触发URL添加到ISAM Appliance反向代理配置
将触发URL添加到ISAM设备反向代理配置
  1. 单击保存以保存更改。

现在配置逐步HTML模板以重定向到逐步应用程序:

  1. 在仍然从上一步中选择反向代理实例的情况下,单击管理>管理根以查看模板页面。
图22.编辑stepup.html模板页面
编辑stepup.html模板页面
  1. 找到stepuplogin.html文件管理> C> stepuplogin.html
  2. (可选)通过单击管理>导出备份到现有页面以保存到本地计算机。
  3. 编辑文件,并替换为以下HTML。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<title>Fingerprinting Browser...</title>
<script src="/mga/sps/ac/js/info.js">
</script>
</head> <body> <form action="/stepup/" method="post"> <input type="hidden" name="URL" value="%URL%" /> </form>
<script TYPE="text/javascript"> var loginText = 'Fingerprinting Browser - Please wait...<br>' + 'Note, this page contains an intentional delay of 3 seconds.'; document.write(loginText); // Set the parameter '3000' to '0' to remove the 3 second delay. setTimeout('document.forms[0].submit()', 3000);
</script> 
</body>
</html>

该页面将加载属性集合JavaScript文件:

http://bank.test/mga/sps/ac/js/info.js

属性集合根据所选的风险概况对浏览器进行指纹识别。 在基于上下文的授权策略定义部分中对此进行了详细说明。

注意:为了让您看到此页面在浏览器中的加载,有意的延迟了3秒。

属性收集完成后,它将重定向到/ stepup /文件夹下的应用程序服务器上部署的逐步升级应用程序。 下载模板中已包含此模板文件的版本。

最后,配置完成后,保存并部署更改并重新启动反向代理实例。

安全策略测试

现在尝试访问/bank资源,WebSEAL现在应该提示您输入基于用户名和密码形式的认证,该认证会将用户认证为1级认证。 然后,WebSEAL将强制执行POP安全策略,该策略要求对用户进行2级认证,然后重定向到提升模板页面。 进阶模板页面将重定向浏览器以访问进阶EAI,这将把凭证升级到2级凭证,然后重定向回/ bank站点-满足安全策略。

图23.安全策略测试的序列图
安全策略测试时序图

获取二次因素一次性密码凭证

ISAM移动设备引入了一系列用于OTP生成和交付的功能。 对于此演示环境,最容易演示的是基于HMAC的一次性密码(HOTP)机制。 有关其他OTP凭据,请参阅ISAM移动信息中心以获取配置详细信息。

使用您的手机下载并安装具有TOTP或HOTP功能的移动应用程序。 在此测试中,我们使用了Google Authenticator [ 下载iOS版 | 下载Android版 ]。

接下来,通过受ISAM设备保护的应用程序界面,导航到MGA连接以获取测试用户的HOTP秘密共享密钥。

https://bank.test/mga/sps/mga/user/mgmt/html/otp/otp.html

出现提示时进行身份验证,并使用您的手机捕获HOTP条形码。 请注意,显示了两个条形码,因此请确保使用一个标记为HOTP的条形码。 HOTP是基于计数器的软件令牌,由于不需要时钟同步,因此在虚拟化测试环境中很有用。

图24.使用Google Authenticator扫描HOTP QR码
使用Google Authenticator扫描HOTP QR码

基于上下文的授权策略定义

在本节中,我们将引导您完成设置静默设备注册和逐步身份验证的步骤,这些步骤将使用HMAC一次性密码身份验证。

首先,打开ISAM for Mobile管理逻辑管理界面。

接下来,修改风险配置文件以用于计算风险评分。 对于这种情况,我们将使用浏览器配置文件:

  1. 导航到“ 安全移动设置”>“风险配置文件”
图25.配置活动风险配置文件
配置活动风险配置文件
  1. 单击浏览器配置文件,然后单击设置活动
图26.将浏览器配置文件设置为活动
将浏览器配置文件设置为活动
  1. 一旦将其设置为Active ,将出现提示以部署更改。 立即部署更改。
图27.部署更改
部署变更

注意:这需要一些时间,因为此更改需要重新启动运行时。

下一步是导航到“ 安全移动设置”>“访问控制”

之后,通过单击“策略”表上的+图标来创建新策略。

图28.创建一个新策略
制定新政策

现在创建触发HOTP和设备注册的策略:

  1. 给策略命名,例如“ 通过HOTP进行静默设备注册”和描述。
图29.输入策略名称和描述
输入策略名称和描述
  1. 单击添加规则,然后创建该策略的第一部分,如下图所示。
图30.策略编写,第1部分
策略创作,第1部分

在规则的第一部分中,我们定义了一个策略,该策略处理已使用用户名和密码进行身份验证但之前从未使用此浏览器访问过该网站的用户。 这被标识为低身份验证级别(级别1),并且它们的riskScore大于或等于55。由于我们已经配置了基于浏览器的风险配置文件,因此该riskScore是基于浏览器指纹来计算的。 通过此访问,我们将使用HOTP身份验证将它们重定向到HOTP进程。

单击确定以完成规则的第一部分。

  1. 单击添加规则,然后创建策略的第二部分,如下图所示。
图31.策略编写,第2部分
策略编写,第2部分

在规则的第二部分中,我们定义了一个策略,该策略处理使用用户名和密码进行身份验证,使用未注册浏览器并已完成其OTP流程的用户。 这被标识为他们的authenticationTypes ,它没有成员urn:ibm:security:authentication:asf:hotp ,并且他们的riskScore仍然很高(> 55)。 通过此访问,我们将允许通过“静默设备注册”进行访问。

单击“ 确定”完成规则的第二部分。

  1. 单击添加规则,然后创建策略的第三部分,如下图所示。
图32.策略编写,第3部分
政策制定,第3部分

在规则的第三部分中,我们定义了一个策略,该策略处理通过用户名和密码以及注册的浏览器进行身份验证的用户。 低于55的低riskScore标识了这一点。在这种访问方式下,我们仅允许访问。

单击确定以完成规则的第三部分。

  1. 单击保存以保存策略。

完整的策略应类似于以下屏幕截图:

图33.完整策略
完整的政策

下一步是创建新资源并附加新策略:

  1. 单击资源 ,然后单击+图标以添加可用资源。
图34.创建一个新的资源点
创建一个新的资源点
  1. 定义一个映射到虚拟主机上的逐步EAI应用程序的资源。
图35.定义提升资源点
定义提升资源点
  1. 选择升级资源后,单击“ 附加”以将“ 无声设备注册” 附加HOTP策略。 选择策略,然后单击“ 确定”
图36.将无声设备注册附加到HOTP策略,第1部分
将静音设备寄存器附加到HOTP,第1部分
图37.将无声设备注册附加到HOTP策略,第2部分
将无声设备注册附加到HOTP策略,第2部分
  1. 单击发布以部署策略。
图38.发布策略
发布政策

在建立此策略,配置ACL和POP之后,现在应该使用真正的两因素身份验证来保护站点。 下表描述了流程。

图39.用于保护/ bank网站的CBA两步验证
CBA两因素身份验证以保护/ bank网站

管理注册设备

最终用户和系统管理员都可以管理注册的设备。

Web / REST界面

通过WebSEAL认证后,用户可以导航到以下URL以查看其注册的设备。

http://bank.test/mga/sps/mga/user/mgmt/html/device/device_selection.html
图40.设备列表
设备清单

该页面的外观和功能可以通过ISAM移动版模板页面进行修改。 该页面上的数据由JavaScript从REST接口填充。

这样,演示中包含的示例银行网站可以列出已注册的设备。

图41.集成到“ 您的银行”站点中的设备列表
设备列表已集成到您的银行站点中

管理界面

管理员可以通过ISAM移动LMI管理用户注册的设备。

  1. 导航对安全移动设置>设备
图42.用户注册设备的管理
用户注册设备的管理
  1. 搜索用户; 可以使用通配符*。
图43.列出和管理用户的设备
列出和管理用户的设备

结论

我们已经向您展示了如何通过集成和配置Web的IBM Security Access Manager和Mobile的IBM Security Access Manager来在受WebSEAL保护的站点上安全地保护两因素身份验证。 我们还演示了如何将ISAM用于Mobile的基于上下文的访问和一次性密码(OTP)界面,以使您能够在整个组织的网站上应用更强大的智能身份验证访问决策。 本节中的简短视频演示说明了完整的方案。


翻译自: https://www.ibm.com/developerworks/security/library/se-accessmanager/index.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_788916.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php模板框架教程,PHP制作静态网站的模板框架教程

模板能够改善网站的结构。本文阐述如何通过PHP 4的一个新功能和模板类&#xff0c;在由大量静态HTML页面构成的网站中巧妙地运用模板控制页面布局。提纲&#xff1a;分离功能和布局避免页面元素重复静态网站的模板框架分离功能和布局首先我们来看看应用模板的两个主要目的&…

官网用什么php系统搭建开源,用云服务器搭建Typecho网站(开源PHP建站系统),...

用云服务器搭建Typecho网站(开源PHP建站系统)&#xff0c;用云服务器搭建Typecho&#xff0c;Typecho来自于开发团队的头脑风暴&#xff0c;基于PHP5开发&#xff0c;支持多种数据库&#xff0c;是一款内核强健﹑扩展方便﹑体验友好﹑运行流畅的轻量级开源博客程序。第一步、搭…

html表单收集信息,如何在网站上嵌入表单来获取访客信息

原标题&#xff1a;如何在网站上嵌入表单来获取访客信息有时我们在浏览某个网站的时候&#xff0c;会看到网站上有在线提交信息的表格&#xff0c;比如“问题反馈表”、“申请参会表”等&#xff0c;这就是网站表单。对于企业来说&#xff0c;在自己的官网上做这样一个在线表单…

很实用的网站收集

很实用的网站收集 ● gif 动画在线生成 loading GIF图片生成 loading GIF图片 在线loading图片制作工具 intoGIF ● CSS 标签兼容性 Can I use... Support tables for HTML5, CSS3, etc ● 网页兼容性测试 LambdaTest ● SVN 托管 免费有大小限制&#xff0c;可以购买空间 …

百度百科网站源码,国外多语言wikipedia百科网站搭建 第一篇

前端时间我这边研究一下类似百度百科的网站&#xff0c;然后按照百度百科的一些功能&#xff0c;还有结合了海外做得比较大的wikipedia百科功能&#xff0c;做了整合开发&#xff0c;现在把那个项目的开发过程等功能&#xff0c;提供给大家参考&#xff0c;希望能够帮到大家的学…

165个站长在线工具箱网站源码/野兔在线工具系统V2.2.7中文版

有165个以上的在线工具功能&#xff0c;也是目前在线工具功能最完善的一个&#xff0c;最新的野兔在线工具系统V2.2.7中文版 系统名称&#xff1a;野兔在线工具系统 系统语言&#xff1a;中文版 系统开发&#xff1a;PHPMySQL 野兔在线工具系统V2.2.7中文版 2022.02.14更新…

css img 适配尺寸_纯CSS一分钟让网站拥有暗黑模式切换功能

前言暗黑模式这个概念最早起源于MacOS系统的Mojave&#xff0c;提供浅色主题和深色主题两种皮肤供用户选择&#xff0c;深色主题就是我们常说的暗黑模式。为了眼睛健康&#xff0c;笔者在手机、平板和电脑上都选择了暗黑模式。主题皮肤随着苹果官方逐渐要求各大系统平台都得适配…

r星你的计算机网络正在自动发送查询,当你在《GTA4》中的网吧,输入了知名网站会怎样?网费真贵!...

原标题&#xff1a;当你在《GTA4》中的网吧&#xff0c;输入了知名网站会怎样&#xff1f;网费真贵&#xff01;GTA4当时在2008年发布的时候你激动吗&#xff1f;但是我年龄还小&#xff0c;并不知道这款游戏&#xff0c;但是没过多久我就开始玩这款游戏了&#xff0c;应该是在…

网站从Http升级为Https真实案例,SSL免费证书加密

从安全角度考虑,公司需要将一个网站从http普通模式升级为https模式,阿里云提供了免费的SSL证书,故这里根据阿里云的SSL证书来做升级. 1.免费证书申请,配置域名 1)SSL 0元购买 2)填写信息,SSL证书与域名绑定 填写域名及个人信息,完成证书申请,会得到key码.需要登录域名购买平台…

mysql网络流量监控_网站监控工具大全,linux下的几个网络流量监控工具

1、nethogs1)NetHogs是一款开源、免费的&#xff0c;终端下的网络流量监控工具&#xff0c;它可监控Linux的进程或应用程序的网络流量。NetHogs只能实时监控进程的网络带宽占用情况。NetHogs支持IPv4和IPv6协议&#xff0c;支持本地网卡以及PPP链接2、IIS7网站监控IIS7网站监控…

打开html文件进入文件索引,打开网站网页是文件夹目录怎么办

文章简介正常来说打开网页都可正常显示网页&#xff0c;却在换空间之后&#xff0c;打开二级目录却不是显示网站网页&#xff0c;而是显示服务器文件夹中的所有html文件及文件夹目录&#xff0c;这是一个网友问过的问题&#xff0c;相信不少网友也曾经碰到过类似或是还没碰到过…

网站备案 服务器不在一个地方,域名和服务器不在一个 如何备案

域名和服务器不在一个 如何备案 内容精选换一换请根据您的实际情况&#xff0c;选择用于备案的服务器&#xff0c;并单击“验证”。如果您购买了华为云云速建站产品搭建网站&#xff0c;需要购买和绑定域名&#xff0c;通过域名访问网站。本节介绍使用华为云云速建站产品&#…

毕设php论坛,php4论坛网站

技术实现开发语言:php.模式:B/S.数据库:mysql.论文字数:1万左右.功能实现前台1)每栏目财经信息能够按类别显示&#xff0c;方便浏览者浏览与查找&#xff0c;内容由后台管理系统添加&#xff0c;主要是财经方面内容&#xff1b;2)每栏目财经信息具有不同的显示模板&#xff0c;…

springmvc 打成jar包_JSP+Spring+SpringMVC+Hibernate+Mysql实现的校园失物招领网站

项目简介项目源码&#xff1a;麻烦转发后关注JAVA发量告急私信回复【源码】即可获取&#xff01;本系统基于JSPSpringSpringMVCHibernateMysql的校园失物招领网站。本系统没有使用常用的SSM或者SSH框架&#xff0c;而是以SpringSpringMVCHibernate三个框架结合来完成。这样能完…

php5.4安装手册,网站新手指南:Win2003+Apache2.2.22+PHP5.4安装配置教程

网站新手指南&#xff1a;Win2003Apache2.2.22PHP5.4安装配置教程作者&#xff1a;美云 发布日期&#xff1a;2012/12/15 21:14:48 浏览次数&#xff1a;4704 复制服务器环境:Windows2003Apache2.2.22PHP5.4MySql5.5所需软件包:1)httpd-2.2.22-win32-x86-openssl-0.9.8t.zip2)p…

怎么用来编写网页_SEO软文编写的要素有这几点

写作是很多人擅长的事情&#xff0c;毕竟目前来说大多数人的学历也不是特别的低&#xff0c;所以知识量还是比较广泛的&#xff0c;但写作业分很多种类型&#xff0c;比如说演讲稿&#xff0c;软文&#xff0c;或者计划书等&#xff0c;种类多了&#xff0c;凭你一人之力就很难…

代理ip网站源码_python 爬取搜狗微信文章(代理池+re解决跳转链接问题)

作者最近在学习python爬虫&#xff0c;在爬取微信文章这个实战项目中遇到了一些小问题&#xff0c;所以写这篇文章来记录一下&#xff0c;顺便分享一下爬取过程。整体思路我们选择从搜狗的微信界面(‘https://weixin.sogou.com/’)来获取微信文章的基本信息&#xff0c;由于搜狗…

cdn 图片 私有_教程篇 | 使用七牛云存储、CDN加速网站图片

嗨&#xff0c;大家好&#xff0c;今天给大家分享的是使用七牛云等云服务商提供的对象存储服务&#xff0c;存储网站图片&#xff0c;并且可以cdn加速图片&#xff0c;让你的网页变得更快。首先给大家多多介绍一些有关的知识。目前各大云服务商都提供了对象存储服务&#xff0c…

java hincrby_使用Redis构建文章投票网站(Java)

文章投票网站的redis相关Java实现需求:1、要构建一个文章投票网站&#xff0c;文章需要在一天内至少获得200张票&#xff0c;才能优先显示在当天文章列表前列。2、但是为了避免发布时间较久的文章由于累计的票数较多而一直停留在文章列表前列&#xff0c;我们需要有随着时间流逝…

网站如何实现客服功能?

话不多说&#xff0c;先上代码 <div id"floatDivBoxs"> <div class"floatDtt">客服列表</div> <div class"floatShadow"> <ul class"floatDqq"> <li style"padding-left:0px;"><a …