JSON Web令牌身份验证

adafruit-circuitpython-jwt的Python项目详细描述


简介

Documentation StatusDiscordBuild Status

CircuitPython的JSON Web令牌(JWT)身份验证模块。JSON Web令牌是一种开放的行业标准 RFC 7519在双方之间安全地表示声明的方法。在

该库目前支持以下JWT生成和验证的签名算法:

依赖关系

此驱动程序依赖于:

请确保CircuitPython文件系统上的所有依赖项都可用。 下载很容易实现 the Adafruit library and driver bundle。在

从PyPI安装

在支持的GNU/Linux系统上,比如Raspberry Pi,可以在本地安装驱动程序from PyPI。要为当前用户安装:

pip3 install adafruit-circuitpython-jwt

要在系统范围内安装(在某些情况下可能需要这样做):

^{pr2}$

要在当前项目的虚拟环境中安装:

mkdir project-name &&cd project-name
python3 -m venv .env
source .env/bin/activate
pip3 install adafruit-circuitpython-jwt

使用示例

生成编码JWT

importadafruit_jwt# Import Private RSA key from a secrets.py filetry:fromsecretsimportsecretsexceptImportError:print("WiFi secrets are kept in secrets.py, please add them there!")raise# Create JWT Claimsclaims={"iss":"joe","exp":1300819380,"name":"John Doe","admin":True}# Generate JWT, sign with RSA private key and RS-256encoded_jwt=adafruit_jwt.JWT.generate(claims,secrets["private_key"],algo="RS256")print("Encoded JWT: ",encoded_jwt)

验证生成的JWT,编码的JWT。在

importadafruit_jwtdecoded_jwt=adafruit_jwt.JWT.validate(encoded_jwt)# The decoded JWT's JOSE header and claims set are returned as a tupleprint('JOSE Header: {}\nJWT Claims: {}'.format(decoded_jwt[0],decoded_jwt[1]))

贡献

欢迎投稿!请阅读我们的Code of Conduct 在帮助这个项目之前保持欢迎。在

文件

有关构建库文档的信息,请查看this guide。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java使用jackson序列化/反序列化具有不同属性的子属性   javascript驱动程序。getTitle()从错误页面获取数据   java web应用程序的增量部署   java字符引用“&#x10”是无效的XML字符   java MyEclipse+Hibernate不按ID排序属性集?   找不到IBM Filenet P8更改预处理器Java实现   java比较器,用于按浮点参数对对象arraylist排序   java如何调试。来自eclipse或其他版本的bsh文件   不允许使用java rest api post方法   java如何在Servlet中打开弹出窗口,然后重定向页面   java的replaceAll方法对我不起作用我做错了什么?   我收到了javax。网ssl。SSLHandshakeException:握手期间远程主机关闭连接