12月27日主题讨论日

本次讨论日邀请了陈钢为我们带来了一节“MOSS SSO”的课程。反响强烈。

MOSS开发讨论记录如下:

北京㊣Spirit says (16:04):
欢迎今天的主持人:陈钢!
myelectronicmail@msn.com says (16:04):
变异啊
欢迎
北京㊣Spirit says (16:04):
他是 我们GZOffice的同事!MOSS高手!
 陈钢| 专注·持之以恒 says (16:05):
不太适应这种场合啊
广州@Joe says (16:05):
今天的主题是:单点登陆 哈哈哈
蓝小小 says (16:05):
大家安静啊。。
myelectronicmail@msn.com says (16:05):
Microsoft Moss MVP
 陈钢| 专注·持之以恒 says (16:06):
我是陈钢,负责华南地区的技术支持。
广州@攻城 says (16:06):
强人啊.
myelectronicmail@msn.com says (16:06):
欢迎
 umboy says (16:06):
欢迎
 陈钢| 专注·持之以恒 says (16:06):
今天的主题是SSO,那么就和大家讨论一下SSO相关的做法吧
bower says (16:07):
太好了
[北京]AA-Hovic says (16:07):
wss

北京㊣Spirit says (16:07):
沙发!
广州@攻城 says (16:07):
太好了.占个沙发
南京㊣Dosboy(Ricky Zhang) says (16:07):
强淫都在
  seabird-  says (16:07):
听着了
 陈钢| 专注·持之以恒 says (16:07):
按照我的感觉,SSO和MOSS是2码事。哈哈
广州@攻城 says (16:08):
那moss里面不是有一个sso吗?
Windie Chai@Beijing says (16:08):
SSOM<->MOSS
  seabird-  says (16:08):
他们是什么关系
昆明㊣蓝 says (16:08):
BTS里也有SSO
南京㊣Dosboy(Ricky Zhang) says (16:08):
很多OA都有SSO功能
 陈钢| 专注·持之以恒 says (16:08):
MOSS是微软的一个web应用平台,里面的SSO事实上是配合做企业SSO而存在的一个模块
广州@攻城 says (16:09):
哦.原来如此.Moss只是集成了sso功能.
广州@Joe says (16:09):
真安静没人说话了?
蓝小小 says (16:09):
大家安静。。专心听课哦。。
bower says (16:09):
听陈老师讲课
广州@攻城 says (16:09):
继续,讲得太好了.
 陈钢| 专注·持之以恒 says (16:10):
在企业里面实现SSO的时候,通常有2个层面的意思,一个是登录,一个是数据透明集成。不好意思,打字比较慢
先说一下登录:在一个地方登陆了。在所有系统都可以通行了,不用再登录了。
 陈钢| 专注·持之以恒 says (16:11):
这个就是场景。
广州@攻城 says (16:12):
嗯.那SSO是如何实现的呢.
 陈钢| 专注·持之以恒 says (16:13):
通常我们的做法就是做一个Web应用,集中登录,至于这个Web应用用不用MOSS,其实不一定,看具体的情况,如果仅仅为了做SSO的话,我觉得是不必要的,一个.NET的WEB或者一个J2EE的web都很容易实现。
广州@Joe says (16:13):
MOSS开发用本身提供的SSO怎么实现呢
北京㊣皮皮 says (16:13):
听课
北京@阿勇 says (16:13):
打开baidu.com 之后把 地址栏里改成 javascript:alert(document.getElementsByTagName('img')[0].src) 会弹出LOGO的地址,有什么变法把两步动作一步完成?
就是说,把这个JS跟在URL之后?
广州@攻城 says (16:13):
现在讨论SSO.
北京@阿勇 says (16:13):
啊?讲课啦?
北京@阿勇 says (16:14):
OKOK
蓝小小 says (16:14):
安静啦。。专心听课。。
 陈钢| 专注·持之以恒 says (16:14):
做SSO集中登录可以解决一个很核心的问题,把用户Ticket保存到客户端。
北京@阿勇 says (16:14):
不知道,不好意思打扰大家啦,嘿嘿,听课听课
 陈钢| 专注·持之以恒 says (16:14):
这个Ticket通常就是Cookie
xin says (16:15):
如果所有系统的用户名密码都不一样,那这一个COOKIE是如何实现登陆所有系统的呢?
 陈钢| 专注·持之以恒 says (16:16):
因为Cookie是不能跨域的,所以其他应用接受请求的时候,需要用Response.Redirect的方法,由客户端重发Request到认证中心,同时告诉认证中心ReturnUrl
 陈钢| 专注·持之以恒 says (16:17):
认证中心把用户Ticket通过挑战协议发回实际的应用。
所以,认证中心必须知道所有系统的认证接口。
xin says (16:20):
可不可以这样理解,用户发送请求到认证中心,中心向应用提交请求,然后再将应用返回的COOKIE转发给客户端?
 陈钢| 专注·持之以恒 says (16:20):
企业里面肯定存在了多套的用户系统,所以才需要SSO。这个时候,认证中心可以使用映射的方法来做。MOSS的SSO其实就是做映射的。
北京㊣皮皮 says (16:21):
搞联邦认证吧。。。
lickies_1983@hotmail.com says (16:21):
不改动原来的系统可否做SSO.
例如IBM的DEMINO.
广州@Joe says (16:21):
MOSS的SSO好像没保存应用程序的cookie啊?
lickies_1983@hotmail.com says (16:22):
还是等他讲完吧.
吴广德 says (16:22):
但是MOSS的SSO里只是要填一个Server URL,应该填的是什么呢?
lickies_1983@hotmail.com says (16:22):
保存应用程序的COOKIES应该在其他系统的服务器上.
xin says (16:22):
应该是认证中心的URL吧
广州@Joe says (16:23):
既然MOSS提供了SSO,我比较关心用MOSS的SSO究竟怎么来做单点登陆的问题
广州@攻城 says (16:23):
听老师讲吧.
lickies_1983@hotmail.com says (16:23):
先听讲.再讨论
吴广德 says (16:24):
应该说怎样利用MOSS的SSO模块来集成,现在我们都像外挂一样把MOSS集成到SSO中的
xin says (16:24):
MOSS的SSO是不是只是提供了一个可供其他应用调用的接口呢?
lickies_1983@hotmail.com says (16:24):
SSO 有调用接口
xin says (16:24):
错了,是可供认证中心调用的接口
那个认证中心还是得我们自己来

广州@Joe says (16:24):
陈老师呢
 陈钢| 专注·持之以恒 says (16:25):
通常的流程是这样:客户访问一个Web应用,这个Web应用不知道你是谁,就把你的请求发到认证中心,认证中心要求你认证,认证成功后把票据存到客户端,然后把用户票据加密发到具体的应用,这个应用就知道身份了。通常具体的应用还会把自己域的Cookie写一下,保证浏览器关闭之前都不用再去认证中心认证。
lickies_1983@hotmail.com says (16:26):
这样具体的应用应该是接个接口获取,验证如果OK,就给自己域的COOKIES,然后REDIRECT到相应的URL.
 陈钢| 专注·持之以恒 says (16:26):
具体的应用最直接的方法就是写HttpModule截获用户状态。
 陈钢| 专注·持之以恒 says (16:28):
对于MOSS的SSO,其实就是一个模块,提供了凭据的存取,具体的写法就那么几句,SDK里面都有。
lickies_1983@hotmail.com says (16:29):
大家想知道的是凭证获取完如何和其他系统应用的连接.
 陈钢| 专注·持之以恒 says (16:30):
可能大家对sso的实现习惯了那种用XMLHTTP post的方法
 陈钢| 专注·持之以恒 says (16:31):
其实企业级的SSO方案里面,是很少这样做的。
所以也就没有了“凭证获取完如何和其他系统应用的连接”的问题。
广州@Joe says (16:32):
用MOSS的SSO可以做企业级的SSO吗
 陈钢| 专注·持之以恒 says (16:33):
在一个地方认证通过了,下面的问题就是解决实际的应用系统和认证中心的安全对话就可以了。
lickies_1983@hotmail.com says (16:33):

深圳㊣利民 says (16:33):
大家可以看看這個再來聽課啊:http://blog.163.com/szmax_limin/blog/static/581828612007112141943270

M群-赏梅斋-MOSS开发 says (16:34):
【系统提示】Martin(bbs.kentcj.com我的论坛,欢迎灌水)สวัสดีปีใหม่申请加入群,理由是:3232323
输入:
/ty w_xiaof@hotmail.com
/jj w_xiaof@hotmail.com
广州@Joe says (16:34):
上不了
深圳㊣利民 says (16:34):
問下:如果多個系統的用戶怎麼同步?一定得一個一個的加嗎?
 陈钢| 专注·持之以恒 says (16:34):
对于做SSO,原系统通常要做一定的改造的
 陈钢| 专注·持之以恒 says (16:35):
对于.net系统,最直接的方法就是加HttpModule,嵌入处理。
广州@攻城 says (16:35):
如果我一个系统里面用了session,没有用cookie.那又怎么办呢.
M群-赏梅斋-MOSS开发 says (16:36):
【系统提示】有新用户 Martin(bbs.kentcj.com我的论坛,欢迎灌水)สวัสดีปีใหม่ 加入群中
lickies_1983@hotmail.com says (16:36):
在以前的应用里加HTTPMODULE是吧?>
深圳㊣利民 says (16:36):
還有CS系統怎麼辦
M群-赏梅斋-MOSS开发 says (16:37):
【系统提示】Martin(bbs.kentcj.com我的论坛,欢迎灌水)สวัสดีปีใหม่将昵称更改为上海bbs.kentcj.com
深圳㊣利民 says (16:37):
現在的企業有很多CS系統
上海bbs.kentcj.com says (16:37):
/who
xin says (16:37):
对,比如用友的
 陈钢| 专注·持之以恒 says (16:38):
using System;

using System.Collections.Generic;

using System.Text;

using System.Web;

using System.Security.Principal;

using System.Web.Securty;

 

namespace Microsoft.POC.HttpModules

{

    public class AuthenticateModule: IHttpModule

    {

        #region IHttpModule 成员

 
        public void Dispose()

        {

          

        }
王海峰 says (16:38):
请问:建好了80端口的网站集,如何将注册好的域名绑定在其上?谢谢!
 陈钢| 专注·持之以恒 says (16:38):
public void Init(HttpApplication context)

        {

            context.AuthenticateRequest += new EventHandler(context_AuthenticateRequest);

          

        }
void context_AuthenticateRequest(object sender, EventArgs e)

        {

 

            HttpApplication app = (HttpApplication)sender;
     if(app.Request.IsAuthenticated) return;

            string userName = app.Context.Request.QueryString["userName"];

            if (userName == null) return;

 

            GenericIdentity userIdentity = new GenericIdentity(userName);

          

        
FormsAuthentication.Initialize();

            FormsAuthentication.SetAuthCookie(userName, false);

        }

 

        #endregion

    }

}
上海bbs.kentcj.com says (16:38):
发什么啊
乱发
王海峰 says (16:38):
请问:建好了80端口的网站集,如何将注册好的域名绑定在其上?谢谢!

lickies_1983@hotmail.com says (16:39):
kentcj也来了..呵呵
 陈钢| 专注·持之以恒 says (16:39):
这段代码做了一个简单的Demo
南京㊣Dosboy(Ricky Zhang) says (16:39):
现在讨论SSO,其它问题放后
lickies_1983@hotmail.com says (16:39):
恩.

上海bbs.kentcj.com says (16:39):
iis里面,绑定ip和域名
王海峰 says (16:39):
Martin,你好,拜访了你的moss网站,很好!
 陈钢| 专注·持之以恒 says (16:39):
就是写一个HttpModule,直接安装到MOSS里面就可以。
上海bbs.kentcj.com says (16:39):
网站是kentcj作的
我负责维护
呵呵
蓝小小 says (16:39):
安静。专心听课。。
lickies_1983@hotmail.com says (16:40):
好好看下这个程序
[北京]AA-Hovic says (16:40):
哪个?给我个连接 ..
lickies_1983@hotmail.com says (16:40):
上面

lickies_1983@hotmail.com says (16:41):
陈老师,.能否把这个DEMO 做成个程序让大家下载一下
上海bbs.kentcj.com says (16:41):
放我网站下,不是很好吗?
bower says (16:41):
能不能别这么乱啊!影响大家听课,课后讨论不行吗
上海bbs.kentcj.com says (16:41):
共享共享
王海峰 says (16:41):
Q:sharepoint admin site里面的“备用访问映射”是干什么的?
 陈钢| 专注·持之以恒 says (16:42):
不好意思,我没有存东西的习惯,很多事情做完就丢了。哈哈
上海bbs.kentcj.com says (16:42):

lickies_1983@hotmail.com says (16:42):
王海锋同志,现在不是问问题的时间.
 陈钢| 专注·持之以恒 says (16:42):
这些技术其实都不难,只是一些思路。
lickies_1983@hotmail.com says (16:42):

思路现在懂了
lickies_1983@hotmail.com says (16:43):
陈老师你先讲吧.我们等下再问问题
王海峰 says (16:43):
哦,对不起,我怎么了解msn群的使用
 陈钢| 专注·持之以恒 says (16:43):
但是用HttpModule做权限认证有个问题,Session的使用是比较麻烦的
深圳㊣利民 says (16:44):
你的意思是在每個asp.net應用程式中加個HTTPMODULE,這個HTTPMODULE用來於得Cookies認証?
 陈钢| 专注·持之以恒 says (16:44):
因为在AuthenticateRequest的时候,Session对象是不可以用的。
lickies_1983@hotmail.com says (16:44):
httpmodule写在MOSS端.那么原的系统就不用改了吧?
 陈钢| 专注·持之以恒 says (16:44):
Session对象在AquireRequestState后才有
httpmodule写在MOSS端.那么原的系统就不用改了吧?是的
lickies_1983@hotmail.com says (16:45):
我公司有DOMINO,可以用这个方式吗?
 陈钢| 专注·持之以恒 says (16:45):
但是一定要在客户端保存Cookie
lickies_1983@hotmail.com says (16:45):
客户端肯定是要.
 陈钢| 专注·持之以恒 says (16:45):
MOSS的Form认证需要Cookie
lickies_1983@hotmail.com says (16:45):
我们MOSS是AD.
lickies_1983@hotmail.com says (16:46):
我目前是用POST参数过去,原来的系统做个接收的.
 陈钢| 专注·持之以恒 says (16:46):
如果是AD的话,最好的方法就是使用AD为主帐号,映射其他非AD认证系统了。
 陈钢| 专注·持之以恒 says (16:47):
就是认证中心也设成AD登录就OK了。
深圳㊣利民 says (16:47):
直接在調用其它系統的時候去認証不行嗎?
广州@Joe says (16:48):
其他系统帐号很多,怎么批量映射啊
lickies_1983@hotmail.com says (16:48):
是准备用这样.
深圳㊣利民 says (16:48):
如我寫一個aspx頁來對應一個外部應用程序,用這個頁面來認証?
這個aspx頁面就是訪問對用的系統
 陈钢| 专注·持之以恒 says (16:48):
其实这个过程实现起来还是有很多细节的,都不知道怎么讲。不习惯
 小鸟 says (16:49):
SSO?
 陈钢| 专注·持之以恒 says (16:49):
下面讲一下第二方面的问题,权限模拟。
lickies_1983@hotmail.com says (16:49):
因为没有讲实际例子
广州@Joe says (16:49):
最好有个DEMO,一切问题都解决了
lickies_1983@hotmail.com says (16:49):
好.,.大家安静
改天再请个高手把例子做个出来.
 陈钢| 专注·持之以恒 says (16:49):
事实上MOSS系统的SSO模块很适合做权限模拟
 陈钢| 专注·持之以恒 says (16:50):
在一个应用里面,用当前的用户,映射成其他系统的用户进行系统数据交换。
 陈钢| 专注·持之以恒 says (16:52):
最典型的例子是,如果用Form认证登录了MOSS,如何取SQL Server分析服务的数据?
因为后者是需要NT权限的。
 陈钢| 专注·持之以恒 says (16:53):
如果做权限模拟的话,在什么地方做比较方便?
在MOSS里面,在页面这个级别做是比较常用的。
重写一个发布页面就可以了。
 陈钢| 专注·持之以恒 says (16:54):
我写了一个页面例子,大家可以参考一下:
 陈钢| 专注·持之以恒 says (16:55):
http://galenchan.spaces.live.com/blog/cns!315ED27F7DD179EA!253.entry
 陈钢| 专注·持之以恒 says (16:56):
在SPD里面用这个基类做发布页面就可以
M群-赏梅斋-MOSS开发 says (16:57):
【系统提示】JIRY.MIN申请加入群,理由是:微软-爆米花介绍的,现在开发Rysnc.
输入:
/ty jiry803@msn.com
/jj jiry803@msn.com
 陈钢| 专注·持之以恒 says (16:57):
在MOSS里面,有些Web Part事实上是集成SSO功能,比如IVIEW
M群-赏梅斋-MOSS开发 says (16:57):
【系统提示】有新用户 JIRY.MIN 加入群中
lickies_1983@hotmail.com says (16:58):
恩.
 陈钢| 专注·持之以恒 says (16:58):
在SAP配置文件里面写上SSO的APP Name,就可以实现单点登录,都不用自己写。以后大家写集成Web Part的时候,也可以参考这种做法。
 陈钢| 专注·持之以恒 says (17:00):
http://blog.163.com/szmax_limin/blog/static/581828612007112141943270/刚才有同志发了这个贴,也是做SSO的一种方法,但和今天讲的不一样,大家也可以参考一下。
lickies_1983@hotmail.com says (17:00):
这个就是POST了
 陈钢| 专注·持之以恒 says (17:00):
时间过得真快。时间到了
lickies_1983@hotmail.com says (17:00):
好象很多人都用这种方式比较多.
lickies_1983@hotmail.com says (17:01):
还没答疑呢....呵呵
 陈钢| 专注·持之以恒 says (17:01):
我们Service实施的时候不用这种思路。
M群-赏梅斋-MOSS开发 says (17:01):
【系统提示】Brain申请加入群,理由是:对MOSS感兴趣。
输入:
/ty tuple605@hotmail.com
/jj tuple605@hotmail.com
lickies_1983@hotmail.com says (17:01):
我也觉得不是太好.
不是最好的解决方式.
M群-赏梅斋-MOSS开发 says (17:01):
【系统提示】有新用户 Brain 加入群中
 陈钢| 专注·持之以恒 says (17:01):
这个做法也不能实现漫游。
lickies_1983@hotmail.com says (17:01):
恩..
 陈钢| 专注·持之以恒 says (17:02):
这是这种做法的帖子特别多
lickies_1983@hotmail.com says (17:02):
写HTTPMODULE?
南京㊣Dosboy(Ricky Zhang) says (17:02):
YES!
收到, 真是受教育呀... ...
 陈钢| 专注·持之以恒 says (17:02):
我建议大家看一下Kerbros协议。
 陈钢| 专注·持之以恒 says (17:03):
对认证有个完整的认证。
总之,Who are you? 和What can you do?是2个系统。
ShuGuang says (17:03):
佩服佩服
广州@Joe says (17:04):
MOSS的映射用户很多的时候怎么办啊
 陈钢| 专注·持之以恒 says (17:05):
下面开始答疑吧,我还要飞车回家哄小孩吃饭呢
王海峰 says (17:05):
大家好,是不是下课了?
lickies_1983@hotmail.com says (17:05):
王海蜂
广州@攻城 says (17:05):
是啊.很多都不知道啊.

lickies_1983@hotmail.com says (17:05):
你的问题呆会再问....呆会我们再给你解答
王海峰 says (17:05):
现在可以问问题了吗?
lickies_1983@hotmail.com says (17:05):
现在是SSO 答疑时间
王海峰 says (17:05):
ok,thanks
 陈钢| 专注·持之以恒 says (17:05):
映射用户很多?有什么问题?
lickies_1983@hotmail.com says (17:06):
他想一次导过去吧.估计...
广州@Joe says (17:06):
谁有空先帮陈钢哄小孩吃饭
lickies_1983@hotmail.com says (17:06):
SSO 是单点登陆,...事实上是存在多个帐号的,用户很多好象不能解决耶
广州@攻城 says (17:06):
陈太太有空吧.
广州@Joe says (17:06):
管理中心只能一个用户一个用户添加啊
lickies_1983@hotmail.com says (17:06):
应该有接口吧..
写个程序?
lickies_1983@hotmail.com says (17:07):
批量?
北京㊣Spirit says (17:07):
陈刚,讲完了吗?
 陈钢| 专注·持之以恒 says (17:07):
如果是MOSS的SSO,你可以使用SSO的接口导入
广州@Joe says (17:07):
应该要写程序
广州@攻城 says (17:07):
我的应用程序用到了session来做用户信息存储怎么办.
lickies_1983@hotmail.com says (17:07):
讲完了.
北京㊣Spirit says (17:07):
OK,感谢陈钢为我们带来的精彩内容!
lickies_1983@hotmail.com says (17:07):
....
广州@Joe says (17:07):
sdk里面的哪个接口吗
lickies_1983@hotmail.com says (17:07):
还没答疑
 陈钢| 专注·持之以恒 says (17:07):
sure
lickies_1983@hotmail.com says (17:07):
SPIRIT待会再总结~~~~
广州@攻城 says (17:07):
嗯...鼓掌
北京㊣Spirit says (17:08):
再一次感谢陈钢!
lickies_1983@hotmail.com says (17:08):
...
广州@Joe says (17:08):
答疑没完啊
ShuGuang says (17:08):
 
 umboy says (17:08):
陈钢,刚刚的
北京㊣Spirit says (17:08):
预告:下周的主题讨论日的主持人是:熊明锋。

转载于:https://www.cnblogs.com/shangmeizhai/archive/2007/12/27/1017231.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值