您的身份服务器只是一个标准的ASP.NET Core应用程序,包括IdentityServer中间件。首先阅读有关发布和部署的官方Microsoft 文档(尤其是有关负载平衡器和代理的部分)。

30.1 典型架构

通常,您将设计IdentityServer部署以实现高可用性:

IdentityServer本身是无状态的,不需要服务器关联 - 但是有些数据需要在实例之间共享。

30.2 配置数据

这通常包括:

  • 资源
  • 客户
  • 启动配置,例如密钥材料,外部提供商设置等......

存储数据的方式取决于您的环境。在配置数据很少更改的情况下,我们建议使用内存存储和代码或配置文件。

在高度动态的环境(例如Saas)中,我们建议使用数据库或配置服务动态加载配置。

IdentityServer支持开箱即用的代码配置和配置文件(请参阅此处)。对于数据库,我们为基于Entity Framework Core的数据库提供支持。

您还可以通过实现IResourceStoreIClientStore构建自己的配置存储。

30.3 密钥材料

另一个重要的启动配置是您的主要材料,请参阅此处以获取有关密钥材料和加密的更多详细信息。

30.4 运营数据

对于某些操作,IdentityServer需要持久性存储来保持状态,这包括:

  • 发布授权码
  • 发出参考和刷新令牌
  • 存储同意

您既可以使用传统数据库来存储操作数据,也可以使用具有Redis等持久性功能的缓存。上面提到的EF Core实现也支持运营数据。

您还可以通过实现IPersistedGrantStore对自己的自定义存储机制的支持- 默认情况下IdentityServer会注入内存中的版本。

30.5 ASP.NET Core 数据保护

ASP.NET Core本身需要共享密钥材料来保护敏感数据,如cookie,状态字符串等。请参阅此处的官方文档。

您可以重复使用上述持久性存储之一,也可以使用像共享文件这样的简单文件。

github地址

第30章 部署 - Identity Server 4 中文文档(v1.0.0)的更多相关文章

  1. 第18章 启动 - Identity Server 4 中文文档(v1.0.0)

    IdentityServer是中间件和服务的组合.所有配置都在您的启动类中完成. 18.1 配置服务 您可以通过调用以下方法将IdentityServer服务添加到DI系统: public void ...

  2. 第66章 视频 - Identity Server 4 中文文档(v1.0.0)

    第66章 视频 66.1 2019 January [NDC] - 使用ASP.NET Core 2.2和3.0保护Web应用程序和API 1月[NDC] - 为基于OpenID Connect / ...

  3. 第56章 Client - Identity Server 4 中文文档(v1.0.0)

    该Client模型的OpenID Connect或OAuth 2.0 客户端-例如,本地应用,Web应用程序或基于JS的应用程序. 56.1 Basics Enabled 指定是否启用客户端.默认为t ...

  4. 第41章 CORS - Identity Server 4 中文文档(v1.0.0)

    第41章 CORS IdentityServer中的许多端点将通过基于JavaScript的客户端的Ajax调用进行访问.鉴于IdentityServer最有可能托管在与这些客户端不同的源上,这意味着 ...

  5. 第21章 登录 - Identity Server 4 中文文档(v1.0.0)

    为了使IdentityServer能够代表用户发出令牌,该用户必须登录IdentityServer. 21.1 Cookie身份验证 使用由ASP.NET Core中的cookie身份验证处理程序管理 ...

  6. 第2章 术语 - Identity Server 4 中文文档(v1.0.0)

    规范.文档和对象模型等都使用特定的术语来表述. 2.1 IdentityServer IdentityServer是OpenID Connect提供程序 - 它实现OpenID Connect和OAu ...

  7. 第1章 背景 - Identity Server 4 中文文档(v1.0.0)

    大多数现代应用程序或多或少看起来像这样: 最常见的互动是: 浏览器与Web应用程序通信 Web应用程序与Web API进行通信(Web应用程序自身 或 代表用户 与 Web API 通信) 基于浏览器 ...

  8. 第64章 学习 - Identity Server 4 中文文档(v1.0.0)

    以下是一些在线,远程和课堂培训选项,以了解有关ASP.NET Core Identity和IdentityServer4的更多信息. 64.1 现代应用程序的身份和访问控制(使用ASP.NET Cor ...

  9. 第57章 GrantValidationResult - Identity Server 4 中文文档(v1.0.0)

    该GrantValidationResult类模型补助确认为扩展授权和资源所有者密码授权的结果. 最常见的用法是使用身份验证(成功用例): context.Result = new GrantVali ...

随机推荐

  1. pta-树种统计

    树种统计 (25 分) 随着卫星成像技术的应用,自然资源研究机构可以识别每一棵树的种类.请编写程序帮助研究人员统计每种树的数量,计算每种树占总数的百分比. 输入格式: 输入首先给出正整数N(≤10​5 ...

  2. python入门 -- 环境搭建(windows)

    1. 下载Anaconda Anaconda内置了python解释器及经常使用的库,提供了编译好的环境.根据自己的操作系统,自行从下面网站挑选一个较新的版本,下载安装即可. https://mirro ...

  3. HBase rebalance 负载均衡源码角度解读使用姿势

    关键词:hbase rebalance 负载均衡 参考源码版本:apache-hbase-1.1.2 什么是HBase Rebalance ? 随着数据写入越来越多以及不均衡,即使一开始每个Regio ...

  4. 全面盘点当前Android后台保活方案的真实运行效果(截止2019年前)

    本文原作者“minminaya”,作者网站:minminaya.cn,为了提升文章品质,即时通讯网对内容作了幅修订和改动,感谢原作者. 1.引言 对于IM应用和消息推送服务的开发者来说,在Androi ...

  5. 快速理解Token,Cookie,Session

    在Web应用中,HTTP请求是无状态的.即:用户第一次发起请求,与服务器建立连接并登录成功后,为了避免每次打开一个页面都需要登录一下,就出现了cookie,Session. Cookie Cookie ...

  6. [Swift]LeetCode373. 查找和最小的K对数字 | Find K Pairs with Smallest Sums

    You are given two integer arrays nums1 and nums2 sorted in ascending order and an integer k. Define ...

  7. [Swift]LeetCode725. 分隔链表 | Split Linked List in Parts

    Given a (singly) linked list with head node root, write a function to split the linked list into k c ...

  8. 发布core到linux

    1.安装虚拟机之后,发现可以ping通但是telnet提示失败 CentOS 7.0默认使用的是firewall作为防火墙(我们需要把防火墙关掉) 查看防火墙状态 firewall-cmd --sta ...

  9. SQL执行错误#1064---保留字错误

    CREATE TABLE IF NOT EXISTS `change` ( `id` INT NOT NULL AUTO_INCREMENT, `creator` VARCHAR(45) NOT NU ...

  10. Python实现 Typora数学公式 转 有道云笔记Markdown数学公式

    话不多说上代码,可以按照自己的需求把匿名函数改成普通函数,改不来的可以加我微信我帮你改. 块状数学公式转换 import re test_str = r''' $D={\{\vec{x_1},\vec ...