# coding=utf-8
# *** WARNING: this file was generated by pulumi-language-python. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***

import builtins as _builtins
import warnings
import sys
import pulumi
import pulumi.runtime
from typing import Any, Mapping, Optional, Sequence, Union, overload
if sys.version_info >= (3, 11):
    from typing import NotRequired, TypedDict, TypeAlias
else:
    from typing_extensions import NotRequired, TypedDict, TypeAlias
from .. import _utilities

__all__ = [
    'BackendConfigCmpv2Authenticators',
    'BackendConfigEstAuthenticators',
    'BackendConfigScepAuthenticators',
    'BackendConfigScepExternalValidation',
    'SecretBackendRolePolicyIdentifier',
    'GetBackendConfigCmpv2AuthenticatorResult',
    'GetBackendConfigEstAuthenticatorResult',
    'GetBackendConfigScepAuthenticatorResult',
    'GetBackendConfigScepExternalValidationResult',
]

@pulumi.output_type
class BackendConfigCmpv2Authenticators(dict):
    def __init__(__self__, *,
                 cert: Optional[Mapping[str, _builtins.str]] = None):
        """
        :param Mapping[str, _builtins.str] cert: "The accessor (required) and cert_role (optional) properties for cert auth backends".
        """
        if cert is not None:
            pulumi.set(__self__, "cert", cert)

    @_builtins.property
    @pulumi.getter
    def cert(self) -> Optional[Mapping[str, _builtins.str]]:
        """
        "The accessor (required) and cert_role (optional) properties for cert auth backends".
        """
        return pulumi.get(self, "cert")


@pulumi.output_type
class BackendConfigEstAuthenticators(dict):
    def __init__(__self__, *,
                 cert: Optional[Mapping[str, _builtins.str]] = None,
                 userpass: Optional[Mapping[str, _builtins.str]] = None):
        """
        :param Mapping[str, _builtins.str] cert: The accessor (required) and cert_role (optional) properties for cert auth backends.
        :param Mapping[str, _builtins.str] userpass: The accessor (required) property for user pass auth backends.
        """
        if cert is not None:
            pulumi.set(__self__, "cert", cert)
        if userpass is not None:
            pulumi.set(__self__, "userpass", userpass)

    @_builtins.property
    @pulumi.getter
    def cert(self) -> Optional[Mapping[str, _builtins.str]]:
        """
        The accessor (required) and cert_role (optional) properties for cert auth backends.
        """
        return pulumi.get(self, "cert")

    @_builtins.property
    @pulumi.getter
    def userpass(self) -> Optional[Mapping[str, _builtins.str]]:
        """
        The accessor (required) property for user pass auth backends.
        """
        return pulumi.get(self, "userpass")


@pulumi.output_type
class BackendConfigScepAuthenticators(dict):
    def __init__(__self__, *,
                 cert: Optional[Mapping[str, _builtins.str]] = None,
                 scep: Optional[Mapping[str, _builtins.str]] = None):
        """
        :param Mapping[str, _builtins.str] cert: The accessor and cert_role properties for cert auth backends
        :param Mapping[str, _builtins.str] scep: The accessor property for SCEP auth backends
        """
        if cert is not None:
            pulumi.set(__self__, "cert", cert)
        if scep is not None:
            pulumi.set(__self__, "scep", scep)

    @_builtins.property
    @pulumi.getter
    def cert(self) -> Optional[Mapping[str, _builtins.str]]:
        """
        The accessor and cert_role properties for cert auth backends
        """
        return pulumi.get(self, "cert")

    @_builtins.property
    @pulumi.getter
    def scep(self) -> Optional[Mapping[str, _builtins.str]]:
        """
        The accessor property for SCEP auth backends
        """
        return pulumi.get(self, "scep")


@pulumi.output_type
class BackendConfigScepExternalValidation(dict):
    def __init__(__self__, *,
                 intune: Optional[Mapping[str, _builtins.str]] = None):
        """
        :param Mapping[str, _builtins.str] intune: The credentials to enable Microsoft Intune validation of SCEP requests
        """
        if intune is not None:
            pulumi.set(__self__, "intune", intune)

    @_builtins.property
    @pulumi.getter
    def intune(self) -> Optional[Mapping[str, _builtins.str]]:
        """
        The credentials to enable Microsoft Intune validation of SCEP requests
        """
        return pulumi.get(self, "intune")


@pulumi.output_type
class SecretBackendRolePolicyIdentifier(dict):
    def __init__(__self__, *,
                 oid: _builtins.str,
                 cps: Optional[_builtins.str] = None,
                 notice: Optional[_builtins.str] = None):
        """
        :param _builtins.str oid: The OID for the policy identifier
        :param _builtins.str cps: The URL of the CPS for the policy identifier
        :param _builtins.str notice: A notice for the policy identifier
        """
        pulumi.set(__self__, "oid", oid)
        if cps is not None:
            pulumi.set(__self__, "cps", cps)
        if notice is not None:
            pulumi.set(__self__, "notice", notice)

    @_builtins.property
    @pulumi.getter
    def oid(self) -> _builtins.str:
        """
        The OID for the policy identifier
        """
        return pulumi.get(self, "oid")

    @_builtins.property
    @pulumi.getter
    def cps(self) -> Optional[_builtins.str]:
        """
        The URL of the CPS for the policy identifier
        """
        return pulumi.get(self, "cps")

    @_builtins.property
    @pulumi.getter
    def notice(self) -> Optional[_builtins.str]:
        """
        A notice for the policy identifier
        """
        return pulumi.get(self, "notice")


@pulumi.output_type
class GetBackendConfigCmpv2AuthenticatorResult(dict):
    def __init__(__self__, *,
                 cert: Optional[Mapping[str, _builtins.str]] = None):
        """
        :param Mapping[str, _builtins.str] cert: The accessor and cert_role properties for cert auth backends
        """
        if cert is not None:
            pulumi.set(__self__, "cert", cert)

    @_builtins.property
    @pulumi.getter
    def cert(self) -> Optional[Mapping[str, _builtins.str]]:
        """
        The accessor and cert_role properties for cert auth backends
        """
        return pulumi.get(self, "cert")


@pulumi.output_type
class GetBackendConfigEstAuthenticatorResult(dict):
    def __init__(__self__, *,
                 cert: Optional[Mapping[str, _builtins.str]] = None,
                 userpass: Optional[Mapping[str, _builtins.str]] = None):
        """
        :param Mapping[str, _builtins.str] cert: The accessor and cert_role properties for cert auth backends.
        :param Mapping[str, _builtins.str] userpass: The accessor property for user pass auth backends.
        """
        if cert is not None:
            pulumi.set(__self__, "cert", cert)
        if userpass is not None:
            pulumi.set(__self__, "userpass", userpass)

    @_builtins.property
    @pulumi.getter
    def cert(self) -> Optional[Mapping[str, _builtins.str]]:
        """
        The accessor and cert_role properties for cert auth backends.
        """
        return pulumi.get(self, "cert")

    @_builtins.property
    @pulumi.getter
    def userpass(self) -> Optional[Mapping[str, _builtins.str]]:
        """
        The accessor property for user pass auth backends.
        """
        return pulumi.get(self, "userpass")


@pulumi.output_type
class GetBackendConfigScepAuthenticatorResult(dict):
    def __init__(__self__, *,
                 cert: Optional[Mapping[str, _builtins.str]] = None,
                 scep: Optional[Mapping[str, _builtins.str]] = None):
        """
        :param Mapping[str, _builtins.str] cert: The accessor and cert_role properties for cert auth backends.
        :param Mapping[str, _builtins.str] scep: The accessor property for scep auth backends.
        """
        if cert is not None:
            pulumi.set(__self__, "cert", cert)
        if scep is not None:
            pulumi.set(__self__, "scep", scep)

    @_builtins.property
    @pulumi.getter
    def cert(self) -> Optional[Mapping[str, _builtins.str]]:
        """
        The accessor and cert_role properties for cert auth backends.
        """
        return pulumi.get(self, "cert")

    @_builtins.property
    @pulumi.getter
    def scep(self) -> Optional[Mapping[str, _builtins.str]]:
        """
        The accessor property for scep auth backends.
        """
        return pulumi.get(self, "scep")


@pulumi.output_type
class GetBackendConfigScepExternalValidationResult(dict):
    def __init__(__self__, *,
                 intune: Optional[Mapping[str, _builtins.str]] = None):
        """
        :param Mapping[str, _builtins.str] intune: The tenant_id, client_id, client_secret and environment properties for Microsoft Intune validation of SCEP requests.
        """
        if intune is not None:
            pulumi.set(__self__, "intune", intune)

    @_builtins.property
    @pulumi.getter
    def intune(self) -> Optional[Mapping[str, _builtins.str]]:
        """
        The tenant_id, client_id, client_secret and environment properties for Microsoft Intune validation of SCEP requests.
        """
        return pulumi.get(self, "intune")


