如何从ASP.NET Core 2.0中的HttpContext获取AuthenticationInfo属性.我理解,随着ASP.NET Core 2.0中安全性的重新设计,AuthenticationManager现在已经过时,我应该删除.Authentication.

我曾经在1.1.2中做过类似的事情

var info = await httpContext.Authentication.GetAuthenticateInfoAsync("Automatic");
info.Properties.Storetokens(new List<AuthenticationToken>
{
    new AuthenticationToken
    {
        Name = OpenIdConnectParameterNames.Accesstoken,Value = accesstoken
    },new AuthenticationToken
    {
        Name = OpenIdConnectParameterNames.RefreshToken,Value = refreshToken
    }
});

await httpContext.Authentication.SignInAsync("Automatic",info.Principal,info.Properties);

解决方法

AuthenticationManager.GetAuthenticateInfoAsync(string)在2.0中被IAuthenticationService.AuthenticateAsync(string)取代:它现在返回AuthenticateResult,但它的工作方式完全相同.

您的代码段可以更新为:

var result = await httpContext.AuthenticateAsync();
result.Properties.Storetokens(new List<AuthenticationToken>
{
    new AuthenticationToken
    {
        Name = OpenIdConnectParameterNames.Accesstoken,Value = refreshToken
    }
});

await httpContext.SignInAsync(result.Principal,result.Properties);

c# – 在ASP.NET Core 2.0中获取AuthenticationInfo的更多相关文章

  1. 在swift中获取NSImage的PNG表示

    非常感谢文件说:所以它期望一本字典,而不是一个零值.提供像这样的空字典:只有在指定了Optional(即[NSObject:AnyObject]的位置?)时才能传递nil值.

  2. android – Eclipse:覆盖project.properties中定义的库路径

    我正在使用ActionBarSherlock作为库.我们没有将ABS包含在我们的存储库中,因此参与ourproject的每个人都必须单独下载并安装它.ActioBarSherlock是一个Android库项目,我通过在同一个Eclipse的工作区中打开它和我的项目来运行它(它们都没有复制到工作区,它们都存在于另一个文件夹中)并通过以下方式将它添加到我的project.properties中:Ref

  3. android – Crashlytics无法使用fabric.properties找到清单

    我正在使用classpath’io.fabric.tools:gradle:1.‘并且在我用于fabric插件的模块中有一个fabric.properties.当我运行gradlewcrashlyticsuploaddistributionProdStaging时,我得到:为什么?解决方法在我使用正确的数据更新fabric.properties并拆分命令后,它工作正常:没有它,错误仍然出现.

  4. 缺少android.compileSdkVersion!错误gradle build

    我正在尝试构建我的库并将其上传到存储库,但不幸的是gradle构建失败.我花了几个小时试图修复这个错误,但我尝试的没有任何帮助.这是我从根项目目录的build.gradle.和我的模块目录中的build.gradle我还在local.properties文件中添加了一些配置问题是我在gradlebintrayUpload之后遇到以下错误.在错误消息输出结束时,我得到了以下内容解决方法与“编译sdk

  5. android – Gitignore没有忽略某些project.properties

    我正在使用Windows和Mac的github应用程序,我的.gitignore文件有问题.我试图忽略在我的两台机器之间切换时生成的project.properties文件,但我似乎无法让它工作.下面是我的.gitignore的副本,它似乎适用于除了project.properties之外的所有东西,以及我在那里的gen/*,但不那么烦人.我一直在研究这个问题并且没有找到答案,我将不胜感激任何帮助!

  6. ajax读取properties资源文件数据的方法

    这篇文章主要介绍了ajax读取properties资源文件数据的方法,实例分析了基于Ajax实现读取properties资源文件数据的相关技巧,需要的朋友可以参考下

  7. SpringBoot读取自定义配置文件方式(properties,yaml)

    这篇文章主要介绍了SpringBoot读取自定义配置文件方式(properties,yaml),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

  8. Properties 持久的属性集的实例详解

    这篇文章主要介绍了Properties 持久的属性集的实例详解的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下

  9. gradle中的properties文件详解

    这篇文章主要介绍了gradle中的properties文件详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

  10. JSP 中Spring的Resource类读写中文Properties实例代码

    这篇文章主要介绍了JSP 中Spring的Resource类读写中文Properties实例代码的相关资料,需要的朋友可以参考下

随机推荐

  1. 如何在.NET Core类库中使用System.Windows.Forms

    我的project.json文件:我所有的net40特定代码都在NET40下定义.有什么想法吗?

  2. 发布到IIS.省略在服务器上安装.NET Core Windows Server Hosting软件包

    ASP.NETCore文档说,其中一个先决条件是目标服务器上的install.NETCoreWindowsServerHostingbundle.是否有可能以某种方式将此依赖项包含在由dotnet-publish创建的自包含包中,并避免现场安装?不.该软件包包含Asp.Net核心模块–以及使用IIS运行Asp.NETCore应用程序所需的本机IIS模块.如果未安装Asp.NET核心模块并且您通过安

  3. CentOS下安装.net core环境并部署WebAPI

    如果提示如下内容就说明启动成功了。

  4. 在CentOS上使用VS Code调试.Net Core应用程序

    VSCode运行后会看到如下图所示的效果。在VSCode界面中,单击最左边的图标按钮中的最后一个图标来安装扩展。主要的扩展包括C#、CodeRunner、C#Extensions和C#FixFormat。如果直接使用Yum安装,安装的是1.8版本的,不符合VSCode所需的版本要求2.1以上的要求,这个只能编译安装了,具体安装步骤可参考《HowtoInstallGit2.15onCentOS/RHEL7/6,Fedora27/26/25》这篇文章。一切准备就绪,现在可将应用程序项目通过SFTP上传到服务器

  5. CentOS 7下发布.net core 2.0 过程

    第5步:在vs中发布工程到本地磁盘发布后的结果如下第6步:验证工程是否可以运行在CMD中切换到发布的目录,执行命令:dotnetASPCore2.dll如果出现如下图所示表明发布成功,可以测试一下localhost:50003.发布到CentOS,并启动服务第1步:用WinSCP拷贝至CentOS系统中的/var/www/qa/中第2步:在CentOS中测试是否可以运行:在Xshell中执行:/opt/core2.0.3/dotnet/var/www/qa/ASPCore2.dll结果没有问题,在Cent

  6. 部署.net core到CentOS系统

    locationNum=10&fps=1

  7. CentOS下使用.Net Core 1.1部署WebApi

    一、安装CentOS系统二、在CentOS上安装最新的.NetCore安装教程在官网已经很详细了。

  8. Ubuntu &amp; GitLab CI &amp; Docker &amp; ASP.NET Core 2.0 自动化发布和部署1

    经过上面四篇博文中的相关安装和配置,我们主要完成了两个容器的创建和运行:gitlab和gitlab-runner:本篇博文目的:使用GitLabCI脚本编译ASP.NETCore2.0程序,然后将编译后的文件传输到服务器上,最后使用SSH连接服务器,并运行程序,完成发布和部署。简单来说,就是我们每次使用gitpush提交完代码,自动完成发布和部署。

  9. 在CentOS上部署Asp.net Core应用程序

    在此之前,我将同样的程序已经成功发布到了Ubuntu,我觉得,既然已经有了前一次的成功经验,不论CentOS还是Ubuntu都是Linux,道理应该差不多吧。但事实证明,还是有些差异的,某些在CentOS上频出的问题在Ubuntu上却没有,所以我的感觉是Ubuntu部署Asp.netCore程序更容易些。Asp.netCore应用需要反向代理配合才能运行,IIS、Apache和Nginx等Web服务软件都可以作为它的反向代理。在Ubuntu下部署与这个差不多,某些命令不一样。

  10. dotnet core 在ubuntu 上运行 F#

    dotnetcore在ubuntu上运行F#线装dotnetcoreubuntusudoapt-getupdatesudoapt-getinstallmono-completefsharpsudoyumupdatesudoyuminstallmono-completefsharp

返回
顶部