ITPub博客

首页 > 应用开发 > IT综合 > TAM SSO 应用改造

TAM SSO 应用改造

原创 IT综合 作者:Tivoliman 时间:2007-07-31 18:00:39 0 删除 编辑

总的思想是:webseal建立了junction之后,在用户登录webseal成功,并试图访问后面应用的时候,会向后面的应用发送包,在包的头(header)里面会放入一些信息,放入什么信息是在建立junction的时候指定的。一般我们建议的方法是,只放入用户名。login界面的改造就是要应用TRUST webseal发过来的信息。

Login界面的工作过程:
后面的应用在接收到这样的包的时候,首先可以通过ip判断是不是从webseal过来的包,如果是的话,从包的头里面取出用户名,调用应用本身的用户存储机制,确定这个用户是不是一个有效用户,如果是的话,就让这个用户正常登录,如果不是的话就拒绝,或是弹出对话框,让用户再次输入。

--------------------------------------------------------------------
Please refer to the PHP and JSP sample code.


PHP example:

***********************************************
/* Check for values in $PHP_AUTH_USER and $PHP_AUTH_PW */

if ((!isset($PHP_AUTH_USER)) || (!isset($PHP_AUTH_PW))) {

/* No values: send headers causing dialog box to appear */
header('WWW-Authenticate: Basic realm="My Private Stuff"');
header('HTTP/1.0 401 Unauthorized');
echo 'Authorization Required.';
exit;

} else if ((isset($PHP_AUTH_USER)) && (isset($PHP_AUTH_PW))){

/* Values contain some values, so check to see if they're correct */

if (($PHP_AUTH_USER != "validname") || ($PHP_AUTH_PW != "goodpassword")) {
/* If either the username entered is incorrect, or the password entered is incorrect, send the headers causing dialog box to appear */
header('WWW-Authenticate: Basic realm="My Private Stuff"');
header('HTTP/1.0 401 Unauthorized');
echo 'Authorization Required.';
exit;
} else if (($PHP_AUTH_USER == "validname") || ($PHP_AUTH_PW == "goodpassword")) {
/* if both values are correct, print success message */
echo "

You're authorized!

";
}
}
?>
*************************************************************

JSP Example:

*************************************************************

<%
String pass="Basic YWRtaW46MTIzNDU2";//这是base64加密后的,此表示为:用户:admin 密码:123456
if(request.getHeader("Authorization")==null)
{
response.setStatus(401);
response.setHeader("WWW-authenticate","Basic realm="请输入管理员密码"");
} else if( !(request.getHeader("Authorization").equals(pass)))
{
response.setStatus(401);
response.setHeader("WWW-authenticate","Basic realm="用户名或者...");
}
*************************************************************

[@more@]

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8933363/viewspace-929679/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
  • 博文量
    17
  • 访问量
    17263