基于Swift的Web框架Vapor2.0文档(翻译)JWT-Overview

转载请附原文链接:http://blog.fandong.me/2017/08/13/iOS-SwiftVaporWeb19/

前言

之前一直有做Java后台开发的兴趣,可是想到要看好多的Java教程,作为一个iOS开发者,我放弃了,
后来从朋友韩云智VL那里知道了这个框架,竟是用Swift写的,不得不说,它燃起了我的兴趣。
Vapor是一个基于Swift开发的服务端框架,可以工作于iOS,Mac OS,Ubuntu。
为了配合Swift部署到服务器,我把ECS的服务器系统改为Ubuntu16.04。

Vapor 2.0 - 文档目录
以下文字翻译自Vapor Docs/JWT/Overview

JWT概述

这份指导提供了使用JWT提供程序包的概述

配置

JWTProvider可以通过三种方式来初始化

  • 定制的自定义签名者jwt.json
  • 支持(私有/公共)hmac rsa esdca
  • 传统的自定义签名者定义jwt.json
  • 支持(私有/公共)hmac rsa esdca
  • 远程jwt.json远程文件链接
  • 支持(私有/公共)rsa

如果你的Vapor应用程序作为身份验证程序,您可能需要使用Legacy custom signer安装程序或Custom signers设置,如果要执行证书更换,那这应该是比较好的.
唯一的区别是JWT头中Custom signerskid值不被忽略,并且它必须与相关联的签名者匹配才能验证签名.
如果你的Vapor应用程序是将认证委托给第三方(auth0,stormpath等)的资源提供者,则可能需要使用Remote JSON Web Key Set设置,在此配置中,JWT令牌由提供JSONWeb密钥集格式的第三方生成,Vapor仅负责验证JWT使用第三方提供的密钥集.

远程JSON Web密钥集

Config/jwt.json
{
    "jwks-url" : "http://my-domain.com/well-known/jwks.json"
}

自定义签名者

这允许指定一组签名者,特别适用于替换证书,自定义签名者不能向后兼容,并且必须在配置中指定一个附加的kid

  • type:unsigned,hmac,esdca
  • kid:一个唯一的标识符
  • algorithm
  • type[hmac]:hs256,hs384,hs512
  • type[rsa]:rs256,rs384,rs512
  • type[esdca]:es256,es384,es512
Config/jwt.json
{
    "signers":[
    {
        "type":"rsa",
        "kid":"1234",
        "algorithm":"rs256",
        "key":"yourkeyhere"
    }
    ]
}

传统自定义签名者

这和以前的实现向后兼容

  • type: unsigned,hmac,esdca
  • algorithm:
  • type[hmac]: hs256, hs384, hs512
  • type[rsa]: rs256, rs384, rs512
  • type[esdca]: es256, es384, es512
Config/jwt.json
{ 
  “signer” : { 
    “type” : “rsa” ,
    “algorithm” : “rs256” ,
    “key” : “yourkeyhere” 
  } 
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,697评论 19 139
  • 转载请附原文链接:http://blog.fandong.me/2017/08/13/iOS-SwiftVapor...
    范小兵阅读 514评论 0 0
  • 概述 JSON Web令牌(JWT)是一个紧凑的采用URL安全表示方法的声明,用于在两方之间传输。JWT的声明被编...
    御浅永夜阅读 5,527评论 0 0
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 179,351评论 25 708
  • 刚刚百度搜索了一下,什么是正能量?“正能量”指的是一种健康乐观、积极向上的动力和情感,是社会生活中积极向上的行为。...
    慧峰诺阅读 384评论 0 0

友情链接更多精彩内容