ASP.NET协作应用集成到trsids身份验证服务器的开发流程
- 开发Actor协同模块; (参考TRSIDS4.0 协作应用集成手册【asp.net】)
- ASP.Net协作应用集成到IDS之前,需要开发Actor类实现协作应用回调接口中定义的本地登录、退出、用户信息同步等回调接口方法,协同IDS完成SSO.Actor类需要继承并重写实现抽象TRS.IDS.DotNetAgent.Actor.AbstractApplicationActor的各个方法,并且Actor开发工程必须引用TRSIDSAspDotNetAgent.dll.
根据实际情况覆盖重写上述方法,确定无误之后,生成一个CoApplication.dll,并将其放入TRSIDSAgent文件夹中,
- 配置TRSIDSAgent.ini文件
修改内容:该文件的有2部分需要根据实际情况做相应的处理和配置
1)IDS这部分属性的配置
##TRSIDS身份服务器后台SSLServer的主机名(就是你安装IDS系统的那台机器的IP)
TRSIDSHost=172.18.84.119
##TRSIDS身份服务器后台通信的端口,默认为2005(对应安装时IDS系统的端口)
TRSIDSPort=2005
2)协作应用(数图)属性【CoApplication】
##协作应用名.必填, 并且必须和身份服务器上注册的协作应用名保持一致(IDS后台应用名称一致)。
CoApplicationName=apabi
##是否允许匿名访问,y为允许,n为不允许
isAllowAnonymity=n
##协作应用用户注销后调转的页面链接,
如CoAppDefaultURL=http://192.9.200.134/aspnetdemo/index.aspx//
CoAppDefaultURL =http://172.18.84.61:8011/Usp
##协作应用的根URL,包括上下文,
如CoAppRootURL=http://127.0.0.1/aspnetdemo
CoAppRootURL = http://172.18.84.61:8011/usp
loginAction.uri=http://172.18.84.61:8011/Usp/TRSIDSAgent/URLValidation.aspx
- 部署安装TRS IDS的Agent
(1) 复制TRS IDS ASP.Net Agent安装介质中的TRSIDSAgent文件夹,到协作应用的根目录下。
(2)复制TRS IDS ASP.Net Agent安装介质中TRSIDSAgent子目录下的log4net.dll和TRSIDSAspDotNetAgent.dll到协作应用的bin目录下。
(3)如果你的项目中引用了log4net且版本高于TRSIDSAgent子目录下的log4net.dll,此时需要将TRSIDSAgent子目录下的log4net.dll替换原有的,添加引用到你的项目中
(4)把前面生成的CoApplication.dll文件,放置到该TRSIDSAgent文件夹中。
- 配置Web.config文件
由于IIS从7.0版本支持两种管道模式:一种是IIS 7.0最新提供的集成管道模式,另一种是经典管道模式,经典管道模式是由先前版本的IIS提供的。
因此TRSIDS ASP.NET Agent从4.0版本开始,不仅支持4.0版本以前版本的经典托管管道模式,而且支持集成托管管道模式。
(1) 经典托管管道模式
在 <system.web></system.web>节点下,添加如下<httpModules></httpModules>子节点。如下:
<system.web>
<httpModules>
<add type="TRS.IDS.DotNetAgent.TRSIDSHttpModule,TRSIDSAspDotNetAgent" name="TRSIDSHttpModule"/>
</httpModules>
</system.web>
如果Web.config文件中已经存在<httpModules></httpModules>子节点,则只需在该<httpModules></httpModules>节点下,添加<add>子节点即可。如下:
<httpModules>
<add type="TRS.IDS.DotNetAgent.TRSIDSHttpModule,TRSIDSAspDotNetAgent" name="TRSIDSHttpModule"/>
</httpModules>
(2) 集成托管管道模式
在 <system.web></system.web>节点下,将impersonate参数设置为false。如下:
<system.web>
<identity impersonate="false" />
</system.web>
在<system.webServer> </system.webServer>节点下,添加如下<modules> </modules>子节点。如下:
<system.webServer>
<modules>
<add type="TRS.IDS.DotNetAgent.TRSIDSHttpModule,TRSIDSAspDotNetAgent" name="TRSIDSHttpModule" />
</modules>
</system.webServer>
注:若从经典模式改为集成模式,需要将原先设置的<httpModules></httpModules>子节点删除。
配置日志输出文件
log4net.config控制TRS IDS ASP.Net Agent日志输出格式。您只需配置<file value="日志输出完整路径,包括日志文件名" />节点的值即可,该项用来指明运行日志输出的路径。如:
<file value="D:\asp.netdemo\TRSIDSAgent\log4net.log" />
若配置为<file value=" log4net.log"/>则默认在协作应用根目录下。(注意此处文件的路径根据实际情况做相应的处理,否则,生成的日志会出现在你想不到的地方 ps 开个玩笑)
2.IDS系统后台协作应用配置
注册协作应用
出于安全的考虑,只有在TRS IDS上注册了的协作应用才能够使用TRS IDS的服务。
注册的过程参见《TRSIDS4.0 管理员使用手册》添加协作应用有关内容。
注意:
1、 ASP.NET协作应用会话名称一般设置为:ASP.NET_SessionId。
2、 ASP.Net协作应用的“IDS请求URL”须指定为
应用根目录/TRSIDSAgent/URLValidation.aspx
如:http://192.9.200.249/demo/TRSIDSAgent/URLValidation.aspx。
另外:正确集成实现单点登录,需要在IDS管理台正确配置SSO URL。
SSO URL必须配置为与实际TRS IDS访问地址相符的URL,否则所有的应用都无法实现SSO。配置方法为:点击IDS系统菜单,然后点击设置,参考页面SSO URL配置说明,配置完成后系统会默认在后面加上/LoginServlet。
ASP.NET协作应用集成到trsids身份验证服务器的开发流程的更多相关文章
- ASP.NET没有魔法——ASP.NET MVC使用Oauth2.0实现身份验证
随着软件的不断发展,出现了更多的身份验证使用场景,除了典型的服务器与客户端之间的身份验证外还有,如服务与服务之间的(如微服务架构).服务器与多种客户端的(如PC.移动.Web等),甚至还有需要以服务的 ...
- ASP.NET MVC使用Oauth2.0实现身份验证
随着软件的不断发展,出现了更多的身份验证使用场景,除了典型的服务器与客户端之间的身份验证外还有,如服务与服务之间的(如微服务架构).服务器与多种客户端的(如PC.移动.Web等),甚至还有需要以服务的 ...
- [ASP.NET]SQL Server 连接字符串和身份验证
SQL Server .NET Data Provider 连接字符串包含一个由一些属性名/值对组成的集合.每一个属性/值对都由分号隔开. PropertyName1=Value1; Property ...
- asp.net中常用的几种身份验证方式
转载:http://www.cnblogs.com/dinglang/archive/2012/06/03/2532664.html 前言 在B/S系统开发中,经常需要使用"身份验证&q ...
- ASP.NET中WebService的两种身份验证方法
一.通过SOAP Header身份验证 此方法是通过设置SOAP Header信息来验证身份,主要通过以下几步: 1.在服务端实现一个SOAP Header类 public class Credent ...
- ASP.NET MVC5(五):身份验证、授权
使用Authorize特性进行身份验证 通常情况下,应用程序都是要求用户登录系统之后才能访问某些特定的部分.在ASP.NET MVC中,可以通过使用Authorize特性来实现,甚至可以对整个应用程序 ...
- 【asp.net core 系列】13 Identity 身份验证入门
0. 前言 通过前两篇我们实现了如何在Service层如何访问数据,以及如何运用简单的加密算法对数据加密.这一篇我们将探索如何实现asp.net core的身份验证. 1. 身份验证 asp.net ...
- ASP.Net中无刷新执行Session身份验证
在写一个客户的B/S结构应用程序时,突然发现一个技巧,不知道是否是MS的一个BUG,给相关的有研究的朋友原先考虑写一个检查Session的类,Session失效后,必须转向登陆页面,可每一个调用该类的 ...
- Asp.net 身份验证方式?
[Forms 身份验证] 通过其可将没有通过身份验证的请求重定向到使用 HTTP 客户端重定向的 HTML 窗体的系统.用户提供凭据并提交该窗体.如果应用程序验证该请求,系统就会发出包含凭据或密钥的 ...
随机推荐
- jQuery键盘控制方法,以及键值(keycode)对照表
键盘控制应用范围非常广泛,比如快捷键控制页面的滚动:在填写表单时候,限制输入内容:或者是屏蔽复制.粘贴.退后等功能.这里说说用jQuery怎么来实现.个人觉得jQuery比原生态的JS好用,代码简单清 ...
- Apache下PHP的几种工作方式
PHP在Apache中一共有三种工作方式:CGI模式.Apache模块DLL.FastCGI模式. 一.CGI模式 PHP 在 Apache 2中的 CGI模式.编辑Apache 配置文件httpd. ...
- UVa 10020 - Minimal coverage(区间覆盖并贪心)
Given several segments of line (int the X axis) with coordinates [Li, Ri]. You are to choose the min ...
- python中read、readline和readlines的区别
read 读取整个文件 readline 读取下一行 readlines 读取整个文件到一个迭代器以供我们遍历(读取到一个list中,以供使用,比较方便). 123.txt内容 ...
- 构建高可用web站点学习(三)
分布式的构建 做为网站访问的生命线(数据访问),当然也可以采用分布式的方法来减轻单台服务器的访问压力.之前有讲过Memcached的分布式,但是Memcached服务器互不通信,所以我们也提过redi ...
- centos7 install mongodb
$vi /etc/yum.repos.d/mongodb-org-3.0.repo [mongodb-org-3.0] name=MongoDB Repository baseurl=http://r ...
- Mahout
http://blog.csdn.net/yueyedeai/article/details/26567379
- C#程序设计基础——数据类型
C#是强类型语言,因此每个变量和对象都必须具有声明类型.数据类型可描述为内置数据类型(如int或char),用户定义数据类型(如class或interface).数据类型还可以定义为值类型(用于存储值 ...
- Chapter 6 — Improving ASP.NET Performance
https://msdn.microsoft.com/en-us/library/ff647787.aspx Retired Content This content is outdated and ...
- Extjs4 中在指定光标处插入值
var rulearea = Ext.getCmp(文本域Id); var rulevalue = rulearea.getValue();// 获取文本textarea 里面的值 var start ...