是否可以为 Azure 辅助角色设置机器密钥

2024-04-16

我在 Azure 辅助角色中托管了一个 Owin WebAPI 服务器。
Owin Authentication中间件似乎使用MachineKey来加密和生成Token。 当我只有一个该角色的实例时,这非常有效,但是一旦我想使用多个实例,每个实例生成的令牌就会不同。

这与 Web 场相同,Azure 会为 Web.config 中的所有实例使用相同的 .net 计算机密钥自动解决 WebRoles 的问题。

但这不适用于辅助角色实例。

有没有办法让 Azure 对工作角色的所有实例使用相同的机器密钥?

似乎比重写代码来为 Owin 生成令牌更容易。


如果您的自托管应用程序可以参考System.Web,那么你可以使用相同的机器钥匙 https://msdn.microsoft.com/query/dev12.query?appId=Dev12IDEF1&l=EN-US&k=k(System.Web.Security.MachineKey);实施Microsoft.Owin.Host.SystemWeb does.

Put the configuration/system.web/machineKeyApp.config 中的设置就像 Web.config 中的设置一样。

参考参考System.Web并添加以下类:

public class MachineKeyDataProtector : IDataProtector
{
    private readonly string[] purposes;

    public MachineKeyDataProtector(params string[] purposes)
    {
        this.purposes = purposes;
    }

    public byte[] Protect(byte[] userData)
    {
        return MachineKey.Protect(userData, this.purposes);
    }

    public byte[] Unprotect(byte[] protectedData)
    {
        return MachineKey.Unprotect(protectedData, this.purposes);
    }
}

然后使用该类设置身份验证选项:

        var authenticationOptions = new OAuthBearerAuthenticationOptions
                                    {
                                        AccessTokenFormat = new TicketDataFormat(new MachineKeyDataProtector(
                                            typeof(OAuthBearerAuthenticationMiddleware).Namespace, "Access_Token", "v1")),
                                        AccessTokenProvider = new AuthenticationTokenProvider(),
                                    };
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

是否可以为 Azure 辅助角色设置机器密钥 的相关文章

  • Azure Functions v3 /HTTP 触发函数:限制请求正文和 URL 大小

    我想看看如何限制最大请求长度 and 最大允许内容长度使用 HTTP 触发器和 Azure Functions v3 创建的 API 中的属性 使用 Net core 应用程序 3 1 我尝试过使用网络配置刚刚被忽略的文件 预期 但我不确定
  • 无法在 Mac OS X 上 rdp 到 Azure

    我正在尝试从 Mac OS X 远程桌面到 Azure 实例 但找不到允许我执行此操作的工具 地址和用户名很好 但客户端似乎都没有能力包含实例信息 到目前为止 我已经尝试过 Microsoft RDC 和 CoRD 但没有成功 有人在 Ma
  • Azure Functions 门户错误 - 函数运行时无法启动

    我有一个 VS 2017 C 开发的 Azure Function App 使用 VS 2017 发布机制部署在消费计划上 所有功能均由定时器或服务总线触发 我在 Azure 门户中看到运行状态 并且功能似乎正在运行 例如将行写入 SQL
  • 为什么 Azure IoT 中心中有主键和辅助键?

    在 Azure IoT 中心创建共享访问策略或注册设备时 将生成主密钥和辅助密钥对 我注意到我可以使用主键或辅助键将设备连接到 IoT 中心 那么 拥有主键 辅助键的目的是什么 我应该如何设计这两个键的使用 主键和辅助键的目标有两个 首先
  • apple-app-site-association 从 azure 请求返回为 application/JSON

    我有以下要求 当在 Azure 网站中请求文件的 URL 时 根文件夹中的可用文件必须返回到 application JSON 举例来说 我有一个名为 apple app site association 的文件 它是一个文本文件 在 az
  • 如何仅将 dist 文件夹部署到 azure 网站?

    我的 azure 网站项目中有 src 文件和 dist 文件夹 project src dist 默认行为上传项目内的所有文件 即 src 和 dist website src dist 我想保持网站干净 只包含 dist 文件 webs
  • 如何从 Azure Graph API 获取基于用户的令牌

    我有一个 Azure Active Directory 在我的 Web Api 中我有一段代码 我可以使用我在 Azure 中注册的应用程序和客户端证书从 Azure Graph Api 获取令牌 这是我现在使用的代码 public sta
  • Azure AD 应用程序未出现在 Azure Web 应用程序的现有 AD 应用程序列表中

    我刚刚进行了一些演练 其中创建了一个 Azure AD 应用程序 将其用作我的 Azure Web 应用程序中的授权 身份验证 现在 当我为我的 Azure 网站 应用服务 选择现有 AD 应用程序时 它不会出现在我的 Azure AD 应
  • 部署到 azure 然后收到 403 - 访问禁止

    我正在尝试部署到 Azure Silverlight 应用程序 我已迁移数据库 更新连接字符串并将应用程序发布到 Azure 但是当我单击服务 URL 时 我得到以下信息 403 禁止 访问被拒绝 您无权使用您提供的凭据查看此目录或页面 知
  • 在 Azure 上运行本机代码

    我正在尝试在 Azure 上运行 C 可执行文件 我有很多workerRoles 他们不断检查作业队列 如果队列中有作业 辅助角色将根据作业类中存储的命令行参数将 C 可执行文件的实例作为进程运行 C 可执行文件通常会创建一些日志文件 我不
  • Windows Azure AppFabric 访问控制服务 (ACS) 中的 OAuth 2.0 身份提供程序

    OAuth 2 0 委派包含在 Azure AppFabric 访问控制服务中 http blogs objectsharp com cs blogs steve archive 2011 04 11 windows azure acces
  • 无法在 python 3.8 上将带有 webapp 的 python 部署到 azure

    我正在尝试使用部署一个测试项目Flask使用以下方法将框架迁移到 Azure 云中Azure CLI https learn microsoft com en us azure app service containers quicksta
  • 无法连接到 Azure Ubuntu VM - 公钥被拒绝

    我们在 Azure 上使用 Ubuntu VM 一段时间了 很少遇到任何问题 然而 其中一台虚拟机最近出现了问题 出乎意料的是 Ubuntu VM 开始拒绝公钥 ssh i azure key email protected cdn cgi
  • Azure AD B2C 中的自定义 SAML iDP 是否支持 iDP 发起的 SSO?

    我正在努力添加自定义 SAML 2 0 身份提供商 Okta 以与我的 B2C 租户一起使用 我已经配置了它 当我从我的应用程序启动登录时 它工作得很好 但是 当我从身份提供商 Okta 启动登录时 它无法登录 第一次尝试时 我从 B2C
  • 如何正确设置 Azure DevOps 和 GitHub 之间的双向同步

    我想通过执行以下操作在 Azure DevOps 和 GitHub 之间创建双向同步 使用 CI 触发器创建 Azure DevOps 管道 将更改从 Azure DevOps 存储库推送到 GitHub 中的分支 创建第二个管道 用于侦听
  • 将包含特殊字符的标签发送到 Azure 通知中心

    我们想在 iPad 应用程序中使用 Azure 通知中心 但遇到了问题 确定谁收到推送消息的标签是电子邮件地址 如果它仅包含普通字符 则可以正常工作 但当我们尝试发送如下所示的标签时 它不起作用 电子邮件受保护 cdn cgi l emai
  • 设置缩略图内容类型

    我需要设置Content Type对于缩略图 我已经尝试如下所示 但它不起作用 仍然 它存储为流 天青功能 索引 json var Jimp require jimp module exports context myBlob gt Rea
  • 如何在 Redis 缓存中存储机器人状态

    虽然有一些文章描述了如何在 Redis 缓存中存储机器人状态 但这是推荐的方法吗 https ankitbko github io 2016 10 Microsoft Bot Framework Use Redis to store con
  • App Insights 升级到 2.5 后,Azure 应用服务将无法启动

    我有一个存储库 它使用应用程序洞察来记录有关在 ASP NET 中运行的服务的信息 我们有一些 ASP NET Core 2 0 站点以及一些完整框架的 asp net 4 应用程序 随着应用程序洞察 2 5 的发布 我们在核心站点中获得了
  • 由于“请求缓慢”限制,Azure 网站不断重新启动

    我在西欧和标准模式下设置了一个天蓝色网站 世界标准时间 UTC 今天 2014 年 1 月 30 日凌晨 03 00 突然开始不断重新启动应用程序池 关闭原因是托管环境 我在 eventlog xml 中有很多这样的事件

随机推荐

  • 在 VBS 中使用环境变量的值时出现问题

    我是 VBScript 新手 编写了一个可以修改 XML 文件的小脚本 但我在将计算机名称放入 XML 时遇到问题 我从以下位置获取了计算机名称HOST使用这些行的环境变量 Set wshShell CreateObject WScript
  • DEP0800:升级到 VS 2015 Update 3 后无法部署 UWP 应用

    升级到 VS 2015 Update 3 后 我很难让我的 UWP 应用程序在调试模式下部署 2 gt 检查是否安装了所需的框架 2 gt 框架 Microsoft VCLibs 140 00 Debug x86 当前未安装应用程序包版本1
  • getline 跳过第一个输入字符 c++ [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 所以我制作
  • awk 中的提示和技巧 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何使用 Scanner 只接受有效的 int 作为输入

    我正在努力使一个小程序更加健壮 我需要一些帮助 Scanner kb new Scanner System in int num1 int num2 0 System out print Enter number 1 num1 kb nex
  • 如何将视图作为图像保存到 SD 卡

    我的应用程序使用表格布局 表格行和文本视图创建一个拼图网格 我希望用户能够将该网格保存到 SD 卡上 以便可以打印 复制或加载到其他设备上 如何保存视图 以便在打印时它看起来就像在 Android 屏幕上一样 None
  • JNLP 作为 HTML 页面中的 Applet

    我试图在 HTML 页面中运行 JNLP 但 java 插件不运行 JNLP 只运行 Applet 这是我的代码
  • Spring Java 中许多 DAO 的策略

    我们现有的项目中有许多 DAO 目前没有接口 但这可能会改变 我们没有为每个 DAO 类连接一个 Spring 管理的 bean 并将它们注入到服务层 而是有一个类似这样的 DAO 工厂 public class DAOFactory pr
  • Angular 2 角色和权限

    我在我的项目中使用了 angular2 和 laravel 5 3 在laravel中 当用户登录服务器时 将发送用户的权限以处理角度授权 所以我写了一个守卫来保护无法访问的用户的路由 这是我的警卫类代码 export class Acce
  • 我可以取回诸如“悬停位置”、“刷位置”或“点击位置”之类的信息吗

    我想建立一个闪亮且有情节的交互式图表 Shiny 有一个内置功能来获取有关用户交互的信息 喜欢 输入 plot click 输入 plot dblclick 输入 plot hover and 输入 plot brush See http
  • 如何从 Firefox 扩展中的地址栏获取文本

    我正在构建一个火狐扩展 我在用XUL and JavaScript去做这个 我需要从 Firefox 浏览器的地址栏中获取文本 请不要与浏览器导航的 URL 混淆 它只是用户在页面重定向之前输入的文本 假设用户位于http www myex
  • ' 需要 1 个类型参数' aria-label='@angular/forms 通用类型 'Type' 需要 1 个类型参数'> @angular/forms 通用类型 'Type' 需要 1 个类型参数

    我升级了 Node 和 NPM 并重新安装了 Angular CLI angular cli 1 0 0 beta 11 webpack 8 node 6 5 0 os linux x64 生成了一个foo项目运行良好 然后我将 Angul
  • 品牌旁边的文字

    如何将 Bootstrap 品牌和任何随附文本一起视为品牌 我已经尝试过这个
  • Firefox 中的 JavaScript 错误

    我在 Firefox 中运行 JavaScript 时遇到问题 下面的脚本在除 Firefox 之外的其他浏览器中运行没有问题 var vars hash var hashes window location href slice wind
  • 基于内容的 RxJava Observable 缓冲区

    我使用 vertX 和 RxJava 启动了一个项目 但遇到了一个问题 但没有找到解决方案 我有一个 Observable 它为传入通信发出 WebSocketFrame 每个 WebSocketFrame 由有效负载 ByteBuffer
  • 大写和 NoClassDefFoundError 与 ClassNotFoundException

    我发现不同平台上 Class forName 何时抛出 ClassNotFoundException 以及何时抛出 NoClassDefFoundError 存在差异 这种行为是否在某处明确定义 或者我偶然发现了一个错误 考虑以下代码 它是
  • spring-data-jpa 不从 oracle.jdbc.driver.forwardonlyreswultset 进行转换

    我正在连接到 oracle 数据库 我刚刚解决了依赖问题 在以下网址中有所需的代码 如存储库 实体等 spring data jpa 1 11 16 带游标的存储过程 https stackoverflow com questions 53
  • 使用不同数据集的 UNION ORDER BY (T-SQL)

    我有一个疑问UNION的两个有点相似的数据集 但它们都有一些在另一个数据集中不存在的列 即 这些列在结果中具有 NULL 值 UNION 问题是 我需要ORDER使用仅存在于一个或另一组中的那些列来生成结果数据 以便以软件端友好的格式获取数
  • GAE 数据存储游标是否永久且持久?

    这么说是否正确com google appengine api datastore Cursor只是将索引位置存储到 GAE 数据存储索引中 游标耐用吗 也就是说 我可以永久存储游标并一次又一次地重复使用它 并确定如果它指向索引中的第 50
  • 是否可以为 Azure 辅助角色设置机器密钥

    我在 Azure 辅助角色中托管了一个 Owin WebAPI 服务器 Owin Authentication中间件似乎使用MachineKey来加密和生成Token 当我只有一个该角色的实例时 这非常有效 但是一旦我想使用多个实例 每个实