Source code for saltext.vcf.clients.vcenter_ad_domain

"""Client for vCenter Server's AD domain join (Active Directory identity provider).

Thin wrapper around :mod:`vcenter_sso`'s identity-provider endpoints, scoped
to the ``ActiveDirectory`` ``config_tag`` — the vSphere REST equivalent of
joining the vCenter Server's SSO domain to Active Directory.
"""

from saltext.vcf.clients import vcenter_sso as sso_c


[docs] def get(opts, domain_name, profile=None): """Return the AD identity provider joined to *domain_name*, or ``None``.""" for provider in sso_c.providers_list(opts, profile=profile) or []: if ( provider.get("config_tag") == "ActiveDirectory" and provider.get("domain_name") == domain_name ): return provider return None
[docs] def join(opts, domain_name, username, password, profile=None): """Join the vCenter Server to *domain_name* as an Active Directory identity provider. Returns the new provider id. """ spec = { "config_tag": "ActiveDirectory", "domain_name": domain_name, "username": username, "password": password, } return sso_c.providers_create(opts, spec, profile=profile)
[docs] def leave(opts, provider_id, profile=None): """Remove the AD identity provider, leaving the domain.""" return sso_c.providers_delete(opts, provider_id, profile=profile)