Asp.net Core Web API-当前用户和Windows身份验证

曼尼斯·乔萨(Manish Joisar)

我们的应用程序AngularJS2 Asp.Net Core API SQL Server中具有以下技术堆栈

现在,我们需要在创建/编辑给定项目(即Core API)的过程中在表中存储登录用户的用户名。

我们已经尝试过

  • WindowsIdentity.GetCurrent()。Name,它使IIS APPPOOL \ Asp.netCore
  • HttpContext.User.Identity给出空值

使用Visual Studio时,我使用WindowsIdentity获得用户名,但是使用IIS,它的值为Asp.Netcore,即池名

Windows身份验证已启用,匿名身份验证已禁用

使用IIS版本6.1

我有什么想念的吗?

曼尼斯·乔萨(Manish Joisar)

我环顾四周,建议使用Windows身份验证创建Asp.Net Core WebApi应用程序。

因此,当我使用Windows身份验证创建Asp.Net Core WebApi时,它起作用了,并且在User.Identity对象中获得了值。

所以我创建了2个应用程序,即一个带有Windows身份验证的应用程序,一个没有Windows身份验证的应用程序,然后比较了所有文件并发现以下文件中的更改

  • forwardWindowsAuthToken -是的,之前曾尝试过,但问题并未解决,Daboul提出了同样的建议
  • launchSettings.json,设置为windowsAuthentication:true和anonymousAuthentication:false

完成此操作后,我就可以在User.Identity对象中进行赋值了。


launchSettings.json文件:

{
  "iisSettings": {
    "windowsAuthentication": true,
    "anonymousAuthentication": false
    }
}

Web.Config:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <handlers>
      <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
    </handlers>
    <aspNetCore forwardWindowsAuthToken="true" processPath="C:\Program Files\dotnet\dotnet.exe" arguments=".\YourWebsite.dll" stdoutLogEnabled="true" stdoutLogFile=".\logs\stdout" />
        <security>
            <authentication>
                <windowsAuthentication enabled="true" />
                <anonymousAuthentication enabled="false" />
            </authentication>
        </security>
  </system.webServer>
</configuration>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

ASP.NET Core Web API身份验证

Google身份验证ASP.NET Core Web Api

Asp Net Core (2.1) WebApp - API 和 Web 界面的身份验证

Web 应用程序和 API AzureAD 身份验证流程 ASP.NET Core

ASP.NET Core Web API + Angular 2授权和身份验证

ASP.NET Web API中的用户身份验证

ASP.NET Core 5 Web API 在用户未经身份验证时返回 404 代码而不是 401

如何在ASP.NET Core 2中对Facebook Web API进行身份验证

自定义身份验证ASP.NET Core Web API

ASP.NET Core Web API Facebook JWT身份验证

响应 JWT 错误的身份验证 Asp.Net Core Web Api

如何使用Postman使用Cookie身份验证测试ASP.NET Core Web API?

使用 ASP.NET Core Web API 的 Facebook JWT 身份验证

静态文件 - asp.net web api core 2.1 身份验证方案承载

使用Restful asp.net Web API进行用户登录身份验证并保护API

从ASP.NET Core API向Firebase身份验证添加用户声明

ASP.NET Web API 2.0管道和ASP.NET Core Web API管道的区别

使用Windows身份验证和OWIN的ASP.NET MVC5 / AngularJS / Web API应用

针对Web和移动的ASP.NET Web API社交身份验证

.Net Core Web API的Auth0身份验证

我的ASP.NET Core App Service Web API如何同时支持AAD承载令牌和客户端证书身份验证?

通过ASP Core MVC,Web API和IdentityServer4的身份验证?

ASP.NET 5中的Web API身份验证

ASP.NET Web API的JWT身份验证

ASP.NET Core Web API验证错误处理

ASP Net Core Web API自定义模型验证

在测试过程中跳过JWT身份验证ASP.Net Core 3.1 Web Api

ASP.Net Core Web API 中的安全用户操作

ASP.NET Core Windows 身份验证从 UI 网站传递到 API