小编min*_*alg的帖子

Windows身份验证提示输入用户名/密码

我正在尝试使用AD /域控制器在客户端网络中部署应用程序.

我的应用程序是一个简单的asp.net c#应用程序,使用Windows身份验证.

我正在使用win2003.

基本上,使用VS2008,创建一个在IIS6.0上托管的新网站.只有2个变化.1.在应用程序的IIS目录安全性上,启用"集成安全性".
注意:匿名也已启用.

生成的骨架代码只有一个更改.将以下内容添加到default.aspx的page_load方法中

using System.Security.Principal;
...
protected void Page_Load(object sender, EventArgs e)
{
    WindowsIdentity id = WindowsIdentity.GetCurrent();
    Response.Write("<B>Windows Identity Check</B><br>");
    Response.Write("Name: " + id.Name + "<br>");
    Response.Write("<BR>");
    Response.Write("User.Identity: " + User.Identity.Name);
    Response.Write("<BR>");
}
Run Code Online (Sandbox Code Playgroud)

浏览到页面的输出: Windows身份检查 - 名称: NT AUTHORITY\NETWORK SERVICE User.Identity:

User.Identity.Name不输出当前用户名.

正如本文中所讨论的那样http://weblogs.asp.net/scottgu/archive/2006/07/12/Recipe_3A00_-Enabling-Windows-Authentication-within-an-Intranet-ASP.NET-Web-application.aspx

我补充说:

<authorization>
    <deny users="?"/>
</authorization>
Run Code Online (Sandbox Code Playgroud)

从我的用户那里,当添加它时,我可以从User.Identity.Name获取当前用户,用户名.

但是,一旦我添加了上述内容,浏览器现在会提示我输入用户名和密码.一旦我输入它,我就可以使用User.Identity.Name来获取用户名.但是我不希望弹出用户名/密码.我希望应用程序根据其网络凭据对用户进行身份验证.

我错过了什么吗?

windows asp.net security authentication

9
推荐指数
1
解决办法
2万
查看次数

MSBuild TFS内部版本号

我一直在使用SVN一段时间.最近我正在使用TFS的一个项目.在构建中,我喜欢在项目输出上追加/更新构建版本号.我在母版页上执行此操作,以便在应用程序中清晰可见.由于应用程序可以在多台计算机上运行,​​因此它是运行verison的便捷信息.

我在SVN世界中认识到:

  <!-- Import of the MSBuildCommunityTask targets -->
    <Import Project="$(MSBuildExtensionsPath)\MSBuildCommunityTasks\MSBuild.Community.Tasks.Targets" />
    <!-- to AssemblyInfo to include svn revision number -->
    <Target Name="BeforeBuild">
      <SvnVersion LocalPath="$(MSBuildProjectDirectory)" ToolPath="$(ProgramFiles)\CollabNet Subversion Client">
        <Output TaskParameter="Revision" PropertyName="Revision" />
      </SvnVersion>
      <Time>
        <Output TaskParameter="Year" PropertyName="Year" />
        <Output TaskParameter="Month" PropertyName="Month" />
        <Output TaskParameter="Day" PropertyName="Day" />
      </Time>
      <FileUpdate Files="MasterPage.master" Regex="svn revision: (\d+)\.(\d+)\.(\d+)\.(\d+)" ReplacementText="svn revision: $(Year).$(Month).$(Day).$(Revision)" />
    </Target>
Run Code Online (Sandbox Code Playgroud)

如上所示,"BeforeBuild"任务使用YYYY.MM.DD.SVNVERSION标记更新masterPage.master文件.

如何使用TFS作为源控件来实现此目的.我如何获得TFS内部版本号?

msbuild tfs msbuild-task tfsbuild

9
推荐指数
1
解决办法
2万
查看次数

Asp.net在运行时覆盖成员资格设置(asp.net mvc)

我有一个连接到单个数据库的应用程序.

该应用程序现在需要挂钩到多个数据库.我们想要做的是,使用相同的应用程序/域/主机名/虚拟目录为用户提供登录屏幕上的选项,以选择他们想要连接的"应用程序/数据库".

每个数据库都有App表/ data/procs/etc以及aspnet成员资格/角色.

当用户输入用户名/密码并选择(选择列表)应用程序时,我想根据所选应用程序数据库验证用户.

目前,成员资格服务的数据库连接字符串保存在web.config中.有什么办法可以在登录时覆盖这个吗?另外,我还需要"记住我"功能才能顺利工作.当用户在5小时内回到应用程序时,这是如何工作的...此过程应该能够识别用户和应用程序并正确登录.

asp.net asp.net-mvc asp.net-membership membership-provider

5
推荐指数
1
解决办法
1880
查看次数