设置.net登录页有多困难/耗时?

设置.net登录页有多困难/耗时?,.net,login,forms-authentication,single-sign-on,.net,Login,Forms Authentication,Single Sign On,我们正在开发一个SSO解决方案,它允许用户通过.net登录,然后使用PHP应用程序。我正在开发PHP端,在做了大量工作之后,我对.net设置了用户名和票证过期日期的cookie进行了解码、解析和其他操作 至少我认为我有。我现在的困难是.net开发人员现在太忙了,无法设置生成这些cookie的测试登录页,这样我才能真正进行测试。我想知道的是设置这个测试页面需要多长时间。我的感觉是这不会花很长时间,但我从来没有做过。(但愿我不会像一个客户那样告诉开发人员“应该只需要一个小时左右。”) 我只是想知道我

我们正在开发一个SSO解决方案,它允许用户通过.net登录,然后使用PHP应用程序。我正在开发PHP端,在做了大量工作之后,我对.net设置了用户名和票证过期日期的cookie进行了解码、解析和其他操作

至少我认为我有。我现在的困难是.net开发人员现在太忙了,无法设置生成这些cookie的测试登录页,这样我才能真正进行测试。我想知道的是设置这个测试页面需要多长时间。我的感觉是这不会花很长时间,但我从来没有做过。(但愿我不会像一个客户那样告诉开发人员“应该只需要一个小时左右。”)

我只是想知道我应该合理地期待什么。简单的登录,创建一个formsauth票证,并将登录的用户发送到我的测试页面。FWIW,他们已经为当前正在使用的.net应用设置了任意数量的登录页面


编辑:澄清一下,我不打算实施这个。我想知道.net开发人员这样做需要多长时间。

如果您使用,它几乎可以为您完成所有工作(包括登录表单本身)。

如果您使用,它几乎可以为您完成所有工作(包括登录表单本身)是ASP.NET中表单身份验证配置端的演练。如果您可以在web表单上编写一个两个文本框页面和一个按钮,那么您就可以完成其余的工作。如果您从未使用过任何ASP.NET,我会安排两个小时。

是ASP.NET中表单身份验证配置端的演练。如果您可以在web表单上编写一个两个文本框页面和一个按钮,那么您就可以完成其余的工作。如果您从未使用过任何ASP.NET,我会预算两个小时。

如果您的所有后续操作都是创建表单身份验证票证,那么这一行代码就可以了:

FormsAuthentication.SetAuthCookie("Username", False)
第二个参数指示您是否希望cookie是永久的


如果您正在寻找asp.net开发人员实现您描述的登录页面所需的工作量的量化,答案应该不超过15分钟。

如果您的所有工作都是创建表单身份验证票证,那么这一行代码就可以了:

FormsAuthentication.SetAuthCookie("Username", False)
第二个参数指示您是否希望cookie是永久的


如果您正在寻找asp.net开发人员实现您描述的登录页面所需的工作量的量化,答案应该不超过15分钟。

如果您没有登录数据库,您可以使用内置sql提供程序,以下是您的配置方法:

如果您确实拥有这些数据,则可以实现一个并且只能实现ValidateUser方法。您可以将其余部分保留为NotImplementedException,并在需要时实现更多功能:

public override bool ValidateUser(string username, string password)
{
   //return true or false;
}
即使您不打算使用具有最终实现的方法,也可以将其用作快速方法。您可以在需要的地方扩展大多数其他部分,并且您使用PHP创建的唯一依赖项是身份验证票证,其中任何一个都使用身份验证票证(也可以直接通过FormsAuthentication)

对于最终实现,您希望确保密码得到正确保护,即在保存到数据库时进行哈希处理。使用内置的提供者,您可以自动完成这项工作。对于您的自定义代码,有一些简单的类可以为您实现这一点

更新1:
提供这样的时间估计真的很难。每个项目、开发人员等的时间差别很大。也就是说,通过会员途径,只需几个小时就可以了,当然,测试它真的很有效(如果通过自定义提供者途径,这假设数据库已经就位,并且您有一些东西可以简化登录)。如果您设置它只是为了测试它如何与PHP集成,我会使用内置的提供程序,只需运行sql脚本来创建db,设置配置,添加登录页面/控件,测试它,您就可以开始了,在这种情况下可以用一个小时。现在,这是一种自动模式,一种只需执行的方法。

如果您没有登录数据库,您可以使用内置的sql提供程序,下面是如何配置它的:

如果您确实拥有这些数据,则可以实现一个并且只能实现ValidateUser方法。您可以将其余部分保留为NotImplementedException,并在需要时实现更多功能:

public override bool ValidateUser(string username, string password)
{
   //return true or false;
}
即使您不打算使用具有最终实现的方法,也可以将其用作快速方法。您可以在需要的地方扩展大多数其他部分,并且您使用PHP创建的唯一依赖项是身份验证票证,其中任何一个都使用身份验证票证(也可以直接通过FormsAuthentication)

对于最终实现,您希望确保密码得到正确保护,即在保存到数据库时进行哈希处理。使用内置的提供者,您可以自动完成这项工作。对于您的自定义代码,有一些简单的类可以为您实现这一点

更新1:
提供这样的时间估计真的很难。每个项目、开发人员等的时间差别很大。也就是说,通过会员途径,只需几个小时就可以了,当然,测试它真的很有效(如果通过自定义提供者途径,这假设数据库已经就位,并且您有一些东西可以简化登录)。如果您设置它只是为了测试它如何与PHP集成,我会使用内置的提供程序,只需运行sql脚本来创建db,设置配置,添加登录页面/控件,测试它,您就可以开始了,在这种情况下可以用一个小时。现在,这是一种自动模式,一种只需执行的方法。

ASP.NET基于表单的身份验证非常容易入门,您可以在网站上找到。你想看看这一节。如果您需要更复杂的解决方案