Public API to retrieve cert key and cert chain files written to the fs separately
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
Línea de trabajo
Comienza revisando el comportamiento actual de la trustme API descrito en el issue y compáralo con las integraciones citadas en cheroot, CherryPy, aiohttp y Flask. Define APIs públicas que expongan por separado los archivos del certificado, la clave privada y la cadena de certificados, y añade cobertura que demuestre que cada ruta devuelta es adecuada para la opción de configuración del servidor correspondiente.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Usually at high-level web servers expose separate configuration options for a certificate file, a private key file, and a certificate chain file.
Currently trustme forces users to use one file for both certificate file and its key file (as it https://github.com/aio-libs/aiohttp/commit/c180800a4c90dc123d05311edbec92a3a82d6317#diff-3ba621217225120eff2c061666b8043cR284) and use CA cert for chain option.
From the API perspective, it looks confusing to any humble human being who isn't proficient in TLS.
When one looks at such tests they're puzzled: why options named explicitly as key and cert receive the same var? maybe it's a bug? what's going on here?
Same for cert chain: why does it look like instead of some mysterious chain file there's a certificate or the CA?
Proofs:
- https://github.com/cherrypy/cheroot/blob/d31adfe/cheroot/ssl/__init__.py#L24
- https://github.com/cherrypy/cheroot/blob/d31adfe/cheroot/ssl/builtin.py#L91
- https://github.com/cherrypy/cheroot/blob/d31adfe/cheroot/ssl/pyopenssl.py#L241
- https://github.com/cherrypy/cherrypy/blob/e10b984/cherrypy/_cpserver.py#L104-L112
- https://github.com/aio-libs/aiohttp/blob/master/aiohttp/worker.py#L188-L191
- https://github.com/pallets/flask/blob/master/flask/cli.py#L733-L738
I think this use case deserves corresponding public APIs in place. What do you think?
- Lenguaje dominante
- Python
- Estrellas
- 608
- Forks
- 34
- Merge medio
- 2 d 20 h
- PR fusionados (30 d)
- 2
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de python-trio/trustme
-
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
python-trio/trustme#723 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 38/100
python-trio/trustme#39 · 4 comentarios · 1 reacción ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
python-trio/trustme#22 · 3 comentarios ·
Todos los issues de python-trio/trustme
Issues similares
-
comp/gateway comp/plugins duplicate P3 type/bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
NousResearch/hermes-agent#137019 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
bot-triaged module: docs triaged
Dificultad 1/5 1-3 horas Aptitud para principiantes 88/100
Los mantenedores suelen responder en 1 día
-
new-entry
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
BinWang28/audio-ai-hub#194 ·
-
confluence: a paged listing's links re-encode a parameter they carry, where real carries it as sentAbiertofidelity
Dificultad 2/5 1-3 horas Aptitud para principiantes 63/100
Los mantenedores suelen responder en 1 día