我有一个 PHP 网站,它对 .NET Web 服务进行 Soap 调用,该服务与基于 .NET 的 Web 应用程序在同一台服务器上运行,除了作为 Web 应用程序本身运行之外,它还从其数据库向PHP 网站。PHP/Wordpress 站点是一个信息门户 + 登陆页面上的一堆静态 PDF 文档,位于登录后,它托管在与 .NET Web 应用程序不同的服务器上。典型的用户使用 PHP 站点上的登录表单进行身份验证,然后对托管 .NET 应用程序和 Web 服务的服务器进行 Web 服务调用(Web 方法如下所示)。根据 Web 服务调用的结果,用户被授予访问包含静态文档链接的登录页面的权限。这是棘手的部分。除了指向静态文档的链接之外,该页面还包含一个指向对用户进行身份验证的 Web 应用程序的链接。长话短说,登录页面和 Web 应用程序的身份验证都是针对 Web 应用程序使用的数据库完成的。所以我想要一个功能,当用户在 PHP 站点上验证自己以查看 PDF,然后单击指向 .NET Web 应用程序的链接时,他不必在此服务器上重新验证自己以进入此站点。
这是对用户进行身份验证的代码片段。
public string Login(string username, string password)
{
LoginUser user = LoginUserRepository.GetUserByUsername(username);
if (user.Password.Equals(password))
{
return "success"+" "+user.Role;
}
else
{
return "Wrong Password";
}
}
然后,调用此 Web 服务的 php 文件为 PHP 站点的用户创建一个会话。在上面的代码片段中,有没有一种方法可以创建一个 cookie,这样用户就不必再次验证自己来访问 .NET Web 应用程序中的页面