Skip to content

enable_sso async

enable_sso(
    directory_id: DirectoryId,
    *,
    config_overrides: Optional[AsyncDirectoryServiceClientConfig] = None,
    user_name: Optional[UserName] = None,
    password: Optional[ConnectPassword] = None,
) -> EnableSsoResult

Enables single sign-on for a directory. Single sign-on allows users in your directory to access certain Amazon Web Services services from a computer joined to the directory without having to enter their credentials separately.

Parameters:

  • directory_id (DirectoryId) –

    The identifier of the directory for which to enable single-sign on.

  • user_name (Optional[UserName], default: None ) –

    The username of an alternate account to use to enable single-sign on. This is only used for AD Connector directories. This account must have privileges to add a service principal name.

    If the AD Connector service account does not have privileges to add a service principal name, you can specify an alternate account with the UserName and Password parameters. These credentials are only used to enable single sign-on and are not stored by the service. The AD Connector service account is not changed.

  • password (Optional[ConnectPassword], default: None ) –

    The password of an alternate account to use to enable single-sign on. This is only used for AD Connector directories. For more information, see the UserName parameter.

Raises:

Examples:

To enable SSO To enable single sign-on for a specified directory.

>>> await client.enable_sso(directory_id='d-92654abfed', user_name='Admin', password='Str0ngP@ssw0rd')
Source code in docs_src/capo_directory_service/_services/async_directory_service.py
async def enable_sso(
    self,
    directory_id: "capo_directory_service.types.directory_id.DirectoryId",
    *,
    config_overrides: Optional[AsyncDirectoryServiceClientConfig] = None,
    user_name: Optional["capo_directory_service.types.user_name.UserName"] = None,
    password: Optional[
        "capo_directory_service.types.connect_password.ConnectPassword"
    ] = None,
) -> "capo_directory_service.types.enable_sso_result.EnableSsoResult":
    """<p>Enables single sign-on for a directory. Single sign-on allows users in your directory to access certain Amazon Web Services services from a computer joined to the directory without having to enter their credentials separately.</p>

    Args:
        directory_id: <p>The identifier of the directory for which to enable single-sign on.</p>
        user_name: <p>The username of an alternate account to use to enable single-sign on. This is only used for AD Connector directories. This account must have privileges to add a service principal name.</p> <p>If the AD Connector service account does not have privileges to add a service principal name, you can specify an alternate account with the <i>UserName</i> and <i>Password</i> parameters. These credentials are only used to enable single sign-on and are not stored by the service. The AD Connector service account is not changed.</p>
        password: <p>The password of an alternate account to use to enable single-sign on. This is only used for AD Connector directories. For more information, see the <i>UserName</i> parameter.</p>

    Raises:
        capo_directory_service.errors.authentication_failed_exception.AuthenticationFailedException: <p>An authentication error occurred.</p>
        capo_directory_service.errors.client_exception.ClientException: <p>A client exception has occurred.</p>
        capo_directory_service.errors.entity_does_not_exist_exception.EntityDoesNotExistException: <p>The specified entity could not be found.</p>
        capo_directory_service.errors.insufficient_permissions_exception.InsufficientPermissionsException: <p>The account does not have sufficient permission to perform the operation.</p>
        capo_directory_service.errors.service_exception.ServiceException: <p>An exception has occurred in Directory Service.</p>
        capo_directory_service.errors.UnknownServiceError: The service returned an error code this client does not model.

    Examples:
        To enable SSO
        To enable single sign-on for a specified directory.

        >>> await client.enable_sso(directory_id='d-92654abfed', user_name='Admin', password='Str0ngP@ssw0rd')
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_directory_service.types.enable_sso_request.EnableSsoRequest]",
    ) -> AsyncOperationResponse[
        "capo_directory_service.types.enable_sso_result.EnableSsoResult"
    ]:
        import capo_directory_service._operations.directory_service_20150416.enable_sso

        (
            output,
            http_response,
        ) = await capo_directory_service._operations.directory_service_20150416.enable_sso.async_enable_sso(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    def _redact_input(
        input_: "capo_directory_service.types.enable_sso_request.EnableSsoRequest",
    ) -> dict[str, Any]:
        import capo_directory_service.types.enable_sso_request

        return capo_directory_service.types.enable_sso_request.redact_sensitive(
            input_
        )

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("EnableSso", redact_input=_redact_input)
    )
    input_: capo_directory_service.types.enable_sso_request.EnableSsoRequest = {
        "directory_id": directory_id
    }
    if user_name is not None:
        input_["user_name"] = user_name
    if password is not None:
        input_["password"] = password

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output