使用 Google 进行 OWIN 身份验证

2024-04-18

我在 ASPNET MVC 项目上使用 owin 身份验证。使用google时遇到以下问题:

1-用户使用google帐户登录

2- 用户退出

3-下次用户尝试登录时,将自动使用当前的google帐户再次登录,而不提示用户是否要使用其他帐户。

问题:如何使用 owin google 身份验证提示用户是否要使用当前帐户或使用其他帐户?

Thanks


如果您使用外部登录提供商(在您的情况下为 Google)登录您的应用程序,那么您的应用程序将由第三方提供商(在您的情况下为 Google)进行身份验证。

成功注册后,asp.net 身份框架将第三方提供商返回的提供商密钥存储在 AspNetUserLogins 表中,下次登录时将使用该密钥。

但用户从您的应用程序注销并不意味着用户从 Google 注销。因此,如果您使用的浏览器已通过您的 Google 帐户身份验证,您将可以使用已通过身份验证的 Google 帐户登录您的应用程序。

当您在应用程序中调用注销时,Asp.Net 身份框架中没有简单的开箱即用选项可以从外部提供商 (Google) 和您的应用程序注销。

你必须打电话谷歌应用程序编程接口 https://developers.google.com/+/web/signin/sign-out当您在应用程序中调用注销时,从 Google 帐户注销以实现您的要求。

你可以看到这个工作项目 https://aspnetidentity.codeplex.com/workitem/1942以获得更多详细信息。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Google 进行 OWIN 身份验证 的相关文章

随机推荐

  • prawnto 显示新页面时不会中断的表格

    我有数量可变的表 行数可变 我想让它们一个接一个地显示 但如果当前页面不适合表 请将其放在下一页上 然后继续 我已将表格放入事务中 这样如果高度适合当前页面 我可以回滚然后打印它 但如何获取表格高度 我现在有这个代码 pdf transac
  • 将 CSV 导入组织模式属性

    我想将 CSV 导入组织模式 其他人已经询问过如何将 CSV 导入组织模式表 这不是我想做的 我需要将 CSV 导入到组织模式属性 例如 像这样的 CSV Name Tel Mobile Fax John 11111 22222 33333
  • 删除具有重复索引的 pandas 行

    如何删除具有重复索引值的行 在下面的天气数据框中 有时科学家会返回并纠正观察结果 不是通过编辑错误的行 而是通过将重复的行附加到文件末尾 我正在从网络上读取一些自动天气数据 每 5 分钟进行一次观测 并编译成每个气象站的每月文件 解析文件后
  • 使用 ffmpeg 将文件从一种格式转换为另一种格式

    我是新来的ffmpeg我试图找出如何将音频或视频文件从一种格式转换为另一种格式 我不想使用CLI 我只是想知道我是否可以使用ffmpeg作为库并调用函数将文件从一种格式转换为另一种格式 我浏览了文档并找到了函数avcodec encode
  • 如何仅在夹具级别执行“beforeEach”,而不是针对该夹具下的每个测试

    我只想在固定装置级别运行 beforeEach 而不是在该固定装置下的每个测试中运行 fixture Fixture A for Use Case1 beforeEach login test A Test 1 async t gt awa
  • 这是 Matlab 的错误吗?你有同样的问题吗? [复制]

    这个问题在这里已经有答案了 我的Matlab版本是R2012a为什么在Matlab中1 1 0 2不等于0 9 这太糟糕了 gt gt 1 1 0 2 0 9 ans 0 这不是Matlab问题 这是一个浮点问题 在 C 或任何符合以下标准
  • 使用 Google Drive API 从 Google Drive 直接下载

    我的桌面应用程序是用 java 编写的 尝试从 Google Drive 下载公共文件 据我发现 它可以通过使用文件来实现webContentLink 这是为了能够在未经用户授权的情况下下载公共文件 因此 下面的代码适用于小文件 Strin
  • 如何将两个或多个不同 csv 文件组成的数据框中的两列合并为一个新列?

    我有几个 csv 文件 全部以日期命名 对于所有文件 我想在每个文件中创建一个新列 其中包含来自其他两列放在一起的数据 然后 我想将它们组合成一个大数据框 并仅选择其中两列来保留 这是一个例子 假设我有两个数据框 a b c a b c x
  • Rails 的 javascript_include_tag 可以忽略之前加载的脚本吗?

    我正在使用这条线 javascript include tag all recursive gt true cache gt true 在 Rails 应用程序的页脚中执行以下操作 递归加载public javascripts下的所有脚本
  • 传递给子指令时父指令控制器未定义

    我在这里问了一般性问题这个帖子 https stackoverflow com questions 42814530 pass argument between parent and child directives 我已经通过工作示例得到
  • 将 RavenDB 与 ServiceStack 结合使用

    I read this http www philliphaydon com 2012 06 using nhibernate with servicestack Phillip Haydon 发表的有关如何将 NHibernate Rav
  • ndk-build DUMP_APP_ABI 在 Windows 上返回 2 行

    我无法在 Windows 上调试 android ndk 应用程序 它seems https stackoverflow com questions 20047348 unknown application abi while debug
  • MySQLdb 使用列表作为输入执行许多?

    我想在我的程序中使用executemany一次存储20条记录 这就是文档中所说的 c executemany INSERT INTO breakfast name spam eggs sausage price VALUES s s s s
  • 为什么实体框架在 SELECT 上生成 JOIN

    我在 C 应用程序中使用实体框架 并且使用延迟加载 我们注意到一个查询对我们的 CPU 有着极高的影响 它仅仅计算一个总和 调试实体框架生成的查询时 它会创建一个INNER JOIN SELECT 这不是高性能的 当我手动将查询更改为正确的
  • magento 付款流程..一般如何运作

    有一个问题 我希望这是问的正确地方 不太明白magento 中的付款方式 客户去结账 假设想要以客人身份付款 因此提供地址等 最后找到付款方式 然后我希望客户通过信用卡付款 已经为我选择的网关 银行 安装了模块 那时 我希望用户被重定向到第
  • Mysql 变量无法通过 php mysql 查询工作

    我有这样的疑问 query SET points 1 SET num 0 SELECT id rank num if points rank num num 1 as point rank FROM said ORDER BY rank 1
  • 调用静态方法时发生致命错误

    所以 这是我的情况 我正在使用 CodeIgniter 我已经设置了一个助手 DK 文件夹下的 string helper 我已经在 dk string helper php 中设置了 dkString 类 static function
  • 测量 OpenMP Fork/Join 延迟

    由于 MPI 3 具有共享内存并行功能 并且它似乎与我的应用程序完美匹配 因此我正在认真考虑将我的混合 OpemMP MPI 代码重写为纯 MPI 实现 为了给棺材里钉上最后一颗钉子 我决定运行一个小程序来测试 OpenMP fork jo
  • 私人变更的用例

    假设我有以下场景 我克隆了一些开源项目 例如从 URL X 克隆的项目 现在我有了它的本地克隆 我对本地克隆进行了一些更改以尝试并在本地提交它们 现在我想要的是以下内容 我想从开源项目 X 获取更新 只需获取其所有最新代码 无需我进行任何更
  • 使用 Google 进行 OWIN 身份验证

    我在 ASPNET MVC 项目上使用 owin 身份验证 使用google时遇到以下问题 1 用户使用google帐户登录 2 用户退出 3 下次用户尝试登录时 将自动使用当前的google帐户再次登录 而不提示用户是否要使用其他帐户 问