in modular_sdk/services/impl/maestro_credentials_service.py [0:0]
def _get_azure_certificate(self, application: Application,
tenant: Optional[Tenant] = None,
) -> Optional[AZURECertificate]:
if not application.secret:
_LOG.warning(f'Application {application.application_id} does not '
f'contain secret')
return
secret = self._ssm_service.get_parameter(application.secret)
if not secret:
_LOG.warning(f'Secret {application.secret} exists in application,'
f' but not in SSM')
return
meta = AZURECertificateApplicationMeta.from_dict(
application.meta.as_dict()
)
secret = AZURECertificateApplicationSecret.from_dict(secret)
with tempfile.NamedTemporaryFile('wb', delete=False) as fp:
fp.write(base64.b64decode(secret.certificate_base64))
return AZURECertificate(
AZURE_TENANT_ID=meta.tenantId,
AZURE_CLIENT_ID=meta.clientId,
AZURE_CLIENT_CERTIFICATE_PATH=Path(fp.name),
AZURE_CLIENT_CERTIFICATE_PASSWORD=secret.certificate_password
)