"""Schema for product mTLS cert signing"""
from pydantic import BaseModel, Field, Extra
[docs]
class CertificatesResponse(BaseModel): # pylint: disable=too-few-public-methods
"""Respond with signed client cert and CA chain"""
[docs]
ca: str = Field(description="CA chain, cfssl encoded (newlines -> \\n)")
[docs]
certificate: str = Field(description="Signed cert, cfssl encoded (newlines -> \\n)")
[docs]
class Config: # pylint: disable=too-few-public-methods
"""Example values for schema"""
[docs]
class CertificatesRequest(BaseModel): # pylint: disable=too-few-public-methods
"""Request signed cert"""
[docs]
csr: str = Field(description="CSR PEM")
[docs]
class Config: # pylint: disable=too-few-public-methods
"""Example values for schema"""
[docs]
class RevokeRequest(BaseModel): # pylint: disable=too-few-public-methods
"""Request a cert to be revoked"""
[docs]
cert: str = Field(description="Cert PEM")
[docs]
class Config: # pylint: disable=too-few-public-methods
"""Example values for schema"""