asp.net-core - 声明类型 URL
问题描述
这个问题之前已经被问过......这里-> claim-types 中的 URL 是什么。
但接受的答案实际上并没有回答这个问题。为什么 ASP.NET Core 身份验证中的声明类型格式为 HTTP Urls?声明类型的“http://schemas.microsoft.com/....”部分的目的是什么?它不是指向网站或某种网络服务的实际超文本传输协议 URL。该地址没有架构文档。那么将它们格式化为 HTTP URL 的目的是什么?我知道它们是什么。我只是不知道为什么它们按原样格式化。
解决方案
我相信 Microsoft 使用 URI 是因为它们符合目的 - 他们需要一个唯一标识符来标识每种声明类型,最好是人类可读的,并保证不会与其他第三方组件或开发人员自己创建的名称发生意外冲突。
Microsoft 选择 URL(它只是一种 URI)的事实可能是传统的。多年来,不同组织开发了各种声明类型标准,其中许多基于作为 URL 的 XML 名称空间(例如,请参阅OASIS 的此标准文档)。许多这些知名的声明类型今天仍在使用,因此以与现有知名声明类型相同的方式格式化任何新定义的声明类型是有意义的。
推荐阅读
- socket.io - 在 Cloud Foundry 上配置 socket.io
- kubernetes - 由于对等方期望旧证书,etcd 3rd pod 未在主节点上安排
- java - 从内部类中将对象添加到数组列表
- arrays - 使用 apache Nifi 将 Json 数组转换为 csv
- spring - 方法拦截的自定义注释中的元素无法解析为变量错误
- php - 带有数据库数组的私有类
- input - 输出到脚本时终端使用什么编号系统
- css - 背景颜色填充和边距
- node.js - 我可以在一个域下上传多个 node.js 应用程序吗?
- java - 如何使用 ViewPorts 为 libgdx 中的不同分辨率缩放 ImageButtons?