没有项目描述

microacme的Python项目详细描述


[![管道状态](https://gitlab.mirus.io/domains/roadrunner/microacme/badges/master/pipeline.svg)(https://mirus.githost.io/domains/roadrunner/microacme/commits/master)
[![覆盖报告](https://gitlab.mirus.io/domains/roadrunner/microacme/badges/master/coverage.svg?job=test)(https://mirus.githost.io/domains/roadrunner/microacme/commits/master)


microacme
`microacme'是一个库,用于讲acme的api服务器,例如由letsencrypt服务运行的服务器。


`microacme`的主要优势在于,它设计成易于子类化和扩展的
以允许自定义实现来解决acme挑战,
无需担心从头开始实现acme rfc。



diafygi优秀的[微型acme项目](https://github.com/diafygi/acme tiny)的目标是小型、无依赖性和易于审计。这个fork
旨在保持小型化,但不以可读性或可用性作为可扩展库的代价。
此外,它依赖于公认的第三方库来处理http请求、json web令牌签名和加密原语(usin分别是g"requests"、"jwcrypto"和"cryptography"。

microAcme,您需要在microAcme.acme client的子类上实现一些方法。

``python
from microAcme import acmeclient

覆盖下面的方法
以自定义acme客户端的质询/响应行为

"
"定义选择质询(自我、域、质询):
"
每个域都有多个解决质询的选项。

重写此函数以选择要为此域解决的挑战。
"
"通过


def set_challenge(self,domain,challenge):
"
"选择挑战后,它需要实际执行你存在于某个地方。

这是你满足挑战要求的地方。
"
"引发NotImplementederror("需要实现一个函数来设置挑战。")


def validate_challenge(self,domain,challenge):
"
用于给acmeclient实例一个机会,确保
外部世界将看到set_challenge所做的更改。

默认情况下,不执行任何操作。例如,可用于在等待异步上载到远程web服务器时睡眠(1)。或者等待
dns传播发生。
"
通过


def cleanup_completed_challenge(self,domain,challenge):
""
此方法在challenge成功后调用。它用于清除解决挑战的任何工件。
"
"pass
```


一旦实现了这些方法,您就可以使用帐户密钥和ca url来实例化您的客户机。

``python
import microacme

my client=mycustomacmeclient(
account_key=bytes_key_,格式为pem_格式,
ca=microacme.staging_ca



首先,CRE创建密钥:
key=microacme。生成加密密钥(key=3072)


公用名='widgetmaker.com',
备用名=[
'mail.widgetmaker.com',
'dev.widgetmaker.com',
],
自动www=true



证书(CSR)


```

大多数都是不言而喻的,但是下面包含了一些示例用法。

`` python
import microacme

e)附加密码短语以保护静止的密钥。
加载的加密密钥=microacme.pem_to_加密密钥(pem_bytes,passphrase=none)如果密钥加密,请使用密码短语



国家,
州,
地区,
组织名称,
通用名称,
可选名称=无,
自动www=true

CSR pem_bytes=microacme.csr_to_pem(csr_object)
CSR_object=microacme.pem_to_csr(csr_pem_bytes)


#使用证书
cert_pem_bytes=microacme.cert_to_pem(cert_obj)
cert_object=microacme.pem_to_cert(cert_pem_bytes)
cert_object=microacme.der_cert(cert_der_bytes)
````

](https://gitlab.mirus.io/domains/roadrunner/microacme/issues)。

我们还保留此库的许可证。

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

推荐PyPI第三方库


热门话题
java在JSP中添加自定义隐式对象   java MasterMindResource泄漏?   不同的c#java结果加密   java为什么安卓 studio显示“constraintlayout中缺少约束”错误?   java Make Logback将日志打印到文件中   java如何在Google应用程序引擎中设置日期时间?   jeditorpane如何阻止java HTMLEditorKit自动关闭我的标记   返回到Activity onCreate()时,不会调用java函数   java为什么我在这个对象上得到一个NullPointerException?   在java中,如何使用包含数组的参数调用图形方法?   java如何在Play framework 2应用程序中存储Akka参与者列表?   ssh使用java将文件从一个solaris 9复制到另一个solaris 9   网络Java服务器正在等待客户端响应   java Spring mvc从formBackingObject()重定向到页面   java Spark:JavaRDD<Tuple2>到javapairdd<>   java如何动态调用基类中由字符串值指定的子类方法?