init pki endpoint

This commit is contained in:
Jörn-Michael Miehe 2022-04-01 15:40:08 +00:00
parent 78e0515042
commit 821d72a773

View file

@ -5,7 +5,9 @@
from fastapi import APIRouter, Depends, HTTPException, status from fastapi import APIRouter, Depends, HTTPException, status
from ..config import Config from ..config import Config
from ._common import Responses, get_current_config from ..db import User
from ..easyrsa import CertificateType, EasyRSA
from ._common import Responses, get_current_config, get_current_user
router = APIRouter(prefix="/service", tags=["service"]) router = APIRouter(prefix="/service", tags=["service"])
@ -20,5 +22,14 @@ router = APIRouter(prefix="/service", tags=["service"])
) )
async def init_pki( async def init_pki(
_: Config = Depends(get_current_config), _: Config = Depends(get_current_config),
current_user: User = Depends(get_current_user),
) -> None: ) -> None:
pass
if not current_user.is_admin:
raise HTTPException(status_code=status.HTTP_403_FORBIDDEN)
easy_rsa = EasyRSA()
easy_rsa.init_pki()
easy_rsa.build_ca()
easy_rsa.issue(CertificateType.server)