1. Packages
  2. Proxmox Virtual Environment (Proxmox VE)
  3. API Docs
  4. realm
  5. LdapLegacy
Viewing docs for Proxmox Virtual Environment (Proxmox VE) v8.0.0
published on Sunday, Apr 5, 2026 by Daniel Muehlbachler-Pietrzykowski
proxmoxve logo
Viewing docs for Proxmox Virtual Environment (Proxmox VE) v8.0.0
published on Sunday, Apr 5, 2026 by Daniel Muehlbachler-Pietrzykowski

    Deprecated: Use proxmoxve.realm.Ldap instead. This resource will be removed in v1.0.

    Manages an LDAP authentication realm in Proxmox VE.

    LDAP realms allow Proxmox to authenticate users against an LDAP directory service.

    Privileges Required

    PathAttribute
    /access/domainsRealm.Allocate

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as proxmoxve from "@muhlba91/pulumi-proxmoxve";
    
    const example = new proxmoxve.realm.LdapLegacy("example", {
        realm: "example-ldap",
        server1: "ldap.example.com",
        port: 389,
        baseDn: "ou=people,dc=example,dc=com",
        userAttr: "uid",
        bindDn: "cn=admin,dc=example,dc=com",
        bindPassword: ldapBindPassword,
        mode: "ldap+starttls",
        verify: true,
        groupDn: "ou=groups,dc=example,dc=com",
        groupFilter: "(objectClass=groupOfNames)",
        comment: "Example LDAP realm managed by Terraform",
    });
    
    import pulumi
    import pulumi_proxmoxve as proxmoxve
    
    example = proxmoxve.realm.LdapLegacy("example",
        realm="example-ldap",
        server1="ldap.example.com",
        port=389,
        base_dn="ou=people,dc=example,dc=com",
        user_attr="uid",
        bind_dn="cn=admin,dc=example,dc=com",
        bind_password=ldap_bind_password,
        mode="ldap+starttls",
        verify=True,
        group_dn="ou=groups,dc=example,dc=com",
        group_filter="(objectClass=groupOfNames)",
        comment="Example LDAP realm managed by Terraform")
    
    package main
    
    import (
    	"github.com/muhlba91/pulumi-proxmoxve/sdk/v8/go/proxmoxve/realm"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := realm.NewLdapLegacy(ctx, "example", &realm.LdapLegacyArgs{
    			Realm:        pulumi.String("example-ldap"),
    			Server1:      pulumi.String("ldap.example.com"),
    			Port:         pulumi.Int(389),
    			BaseDn:       pulumi.String("ou=people,dc=example,dc=com"),
    			UserAttr:     pulumi.String("uid"),
    			BindDn:       pulumi.String("cn=admin,dc=example,dc=com"),
    			BindPassword: pulumi.Any(ldapBindPassword),
    			Mode:         pulumi.String("ldap+starttls"),
    			Verify:       pulumi.Bool(true),
    			GroupDn:      pulumi.String("ou=groups,dc=example,dc=com"),
    			GroupFilter:  pulumi.String("(objectClass=groupOfNames)"),
    			Comment:      pulumi.String("Example LDAP realm managed by Terraform"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using ProxmoxVE = Pulumi.ProxmoxVE;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new ProxmoxVE.Realm.LdapLegacy("example", new()
        {
            Realm = "example-ldap",
            Server1 = "ldap.example.com",
            Port = %!v(PANIC=Format method: fatal: A failure has occurred: unexpected literal type in GenLiteralValueExpression: cty.NumberIntVal(389) (example.pp:3,13-16)),
            BaseDn = "ou=people,dc=example,dc=com",
            UserAttr = "uid",
            BindDn = "cn=admin,dc=example,dc=com",
            BindPassword = ldapBindPassword,
            Mode = "ldap+starttls",
            Verify = true,
            GroupDn = "ou=groups,dc=example,dc=com",
            GroupFilter = "(objectClass=groupOfNames)",
            Comment = "Example LDAP realm managed by Terraform",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import io.muehlbachler.pulumi.proxmoxve.realm.LdapLegacy;
    import io.muehlbachler.pulumi.proxmoxve.realm.LdapLegacyArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new LdapLegacy("example", LdapLegacyArgs.builder()
                .realm("example-ldap")
                .server1("ldap.example.com")
                .port(%!v(PANIC=Format method: fatal: A failure has occurred: unexpected literal type in GenLiteralValueExpression: cty.NumberIntVal(389) (example.pp:3,13-16)))
                .baseDn("ou=people,dc=example,dc=com")
                .userAttr("uid")
                .bindDn("cn=admin,dc=example,dc=com")
                .bindPassword(ldapBindPassword)
                .mode("ldap+starttls")
                .verify(true)
                .groupDn("ou=groups,dc=example,dc=com")
                .groupFilter("(objectClass=groupOfNames)")
                .comment("Example LDAP realm managed by Terraform")
                .build());
    
        }
    }
    
    resources:
      example:
        type: proxmoxve:realm:LdapLegacy
        properties:
          realm: example-ldap
          server1: ldap.example.com
          port: 389 # Base DN and user attribute
          baseDn: ou=people,dc=example,dc=com
          userAttr: uid
          bindDn: cn=admin,dc=example,dc=com
          bindPassword: ${ldapBindPassword}
          mode: ldap+starttls
          verify: true # Group synchronization (optional)
          groupDn: ou=groups,dc=example,dc=com
          groupFilter: (objectClass=groupOfNames)
          comment: Example LDAP realm managed by Terraform
    

    Notes

    Password Security

    The bindPassword is sent to Proxmox and stored securely, but it’s never returned by the API. This means:

    • Terraform cannot detect if the password was changed outside of Terraform
    • You must maintain the password in your Terraform configuration or use a variable
    • The password will be marked as sensitive in Terraform state

    LDAP vs LDAPS

    • LDAP (port 389): Unencrypted connection. Not recommended for production.
    • LDAPS (port 636): Encrypted connection using SSL/TLS. Recommended for production.
    • LDAP+StartTLS: Upgrades plain LDAP connection to TLS. Alternative to LDAPS.

    User Synchronization

    To trigger synchronization, use the proxmoxve.realm.SyncLegacy resource.

    Common Configuration Scenarios

    Anonymous Binding

    For testing or public LDAP servers, omit bindDn and bindPassword to use anonymous binding:

    import * as pulumi from "@pulumi/pulumi";
    import * as proxmoxve from "@muhlba91/pulumi-proxmoxve";
    
    const anonymous = new proxmoxve.realm.LdapLegacy("anonymous", {
        realm: "public-ldap",
        server1: "ldap.example.com",
        baseDn: "ou=users,dc=example,dc=com",
        userAttr: "uid",
    });
    
    import pulumi
    import pulumi_proxmoxve as proxmoxve
    
    anonymous = proxmoxve.realm.LdapLegacy("anonymous",
        realm="public-ldap",
        server1="ldap.example.com",
        base_dn="ou=users,dc=example,dc=com",
        user_attr="uid")
    
    package main
    
    import (
    	"github.com/muhlba91/pulumi-proxmoxve/sdk/v8/go/proxmoxve/realm"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := realm.NewLdapLegacy(ctx, "anonymous", &realm.LdapLegacyArgs{
    			Realm:    pulumi.String("public-ldap"),
    			Server1:  pulumi.String("ldap.example.com"),
    			BaseDn:   pulumi.String("ou=users,dc=example,dc=com"),
    			UserAttr: pulumi.String("uid"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using ProxmoxVE = Pulumi.ProxmoxVE;
    
    return await Deployment.RunAsync(() => 
    {
        var anonymous = new ProxmoxVE.Realm.LdapLegacy("anonymous", new()
        {
            Realm = "public-ldap",
            Server1 = "ldap.example.com",
            BaseDn = "ou=users,dc=example,dc=com",
            UserAttr = "uid",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import io.muehlbachler.pulumi.proxmoxve.realm.LdapLegacy;
    import io.muehlbachler.pulumi.proxmoxve.realm.LdapLegacyArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var anonymous = new LdapLegacy("anonymous", LdapLegacyArgs.builder()
                .realm("public-ldap")
                .server1("ldap.example.com")
                .baseDn("ou=users,dc=example,dc=com")
                .userAttr("uid")
                .build());
    
        }
    }
    
    resources:
      anonymous:
        type: proxmoxve:realm:LdapLegacy
        properties:
          realm: public-ldap
          server1: ldap.example.com
          baseDn: ou=users,dc=example,dc=com
          userAttr: uid
    

    Secure LDAPS with Failover

    import * as pulumi from "@pulumi/pulumi";
    import * as proxmoxve from "@muhlba91/pulumi-proxmoxve";
    
    const secure = new proxmoxve.realm.LdapLegacy("secure", {
        realm: "secure-ldap",
        server1: "ldap1.example.com",
        server2: "ldap2.example.com",
        port: 636,
        baseDn: "ou=users,dc=example,dc=com",
        bindDn: "cn=readonly,dc=example,dc=com",
        bindPassword: ldapPassword,
        mode: "ldaps",
        verify: true,
        caPath: "/etc/pve/priv/ca.crt",
    });
    
    import pulumi
    import pulumi_proxmoxve as proxmoxve
    
    secure = proxmoxve.realm.LdapLegacy("secure",
        realm="secure-ldap",
        server1="ldap1.example.com",
        server2="ldap2.example.com",
        port=636,
        base_dn="ou=users,dc=example,dc=com",
        bind_dn="cn=readonly,dc=example,dc=com",
        bind_password=ldap_password,
        mode="ldaps",
        verify=True,
        ca_path="/etc/pve/priv/ca.crt")
    
    package main
    
    import (
    	"github.com/muhlba91/pulumi-proxmoxve/sdk/v8/go/proxmoxve/realm"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := realm.NewLdapLegacy(ctx, "secure", &realm.LdapLegacyArgs{
    			Realm:        pulumi.String("secure-ldap"),
    			Server1:      pulumi.String("ldap1.example.com"),
    			Server2:      pulumi.String("ldap2.example.com"),
    			Port:         pulumi.Int(636),
    			BaseDn:       pulumi.String("ou=users,dc=example,dc=com"),
    			BindDn:       pulumi.String("cn=readonly,dc=example,dc=com"),
    			BindPassword: pulumi.Any(ldapPassword),
    			Mode:         pulumi.String("ldaps"),
    			Verify:       pulumi.Bool(true),
    			CaPath:       pulumi.String("/etc/pve/priv/ca.crt"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using ProxmoxVE = Pulumi.ProxmoxVE;
    
    return await Deployment.RunAsync(() => 
    {
        var secure = new ProxmoxVE.Realm.LdapLegacy("secure", new()
        {
            Realm = "secure-ldap",
            Server1 = "ldap1.example.com",
            Server2 = "ldap2.example.com",
            Port = %!v(PANIC=Format method: fatal: A failure has occurred: unexpected literal type in GenLiteralValueExpression: cty.NumberIntVal(636) (example.pp:4,18-21)),
            BaseDn = "ou=users,dc=example,dc=com",
            BindDn = "cn=readonly,dc=example,dc=com",
            BindPassword = ldapPassword,
            Mode = "ldaps",
            Verify = true,
            CaPath = "/etc/pve/priv/ca.crt",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import io.muehlbachler.pulumi.proxmoxve.realm.LdapLegacy;
    import io.muehlbachler.pulumi.proxmoxve.realm.LdapLegacyArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var secure = new LdapLegacy("secure", LdapLegacyArgs.builder()
                .realm("secure-ldap")
                .server1("ldap1.example.com")
                .server2("ldap2.example.com")
                .port(%!v(PANIC=Format method: fatal: A failure has occurred: unexpected literal type in GenLiteralValueExpression: cty.NumberIntVal(636) (example.pp:4,18-21)))
                .baseDn("ou=users,dc=example,dc=com")
                .bindDn("cn=readonly,dc=example,dc=com")
                .bindPassword(ldapPassword)
                .mode("ldaps")
                .verify(true)
                .caPath("/etc/pve/priv/ca.crt")
                .build());
    
        }
    }
    
    resources:
      secure:
        type: proxmoxve:realm:LdapLegacy
        properties:
          realm: secure-ldap
          server1: ldap1.example.com
          server2: ldap2.example.com
          port: 636
          baseDn: ou=users,dc=example,dc=com
          bindDn: cn=readonly,dc=example,dc=com
          bindPassword: ${ldapPassword}
          mode: ldaps
          verify: true
          caPath: /etc/pve/priv/ca.crt
    

    With Group Synchronization

    import * as pulumi from "@pulumi/pulumi";
    import * as proxmoxve from "@muhlba91/pulumi-proxmoxve";
    
    const withGroups = new proxmoxve.realm.LdapLegacy("with_groups", {
        realm: "corporate-ldap",
        server1: "ldap.corp.example.com",
        baseDn: "ou=users,dc=corp,dc=example,dc=com",
        bindDn: "cn=svc_ldap,ou=services,dc=corp,dc=example,dc=com",
        bindPassword: ldapPassword,
        mode: "ldap+starttls",
        groupDn: "ou=groups,dc=corp,dc=example,dc=com",
        groupFilter: "(objectClass=groupOfNames)",
        groupNameAttr: "cn",
        syncAttributes: "email=mail,firstname=givenName,lastname=sn",
        syncDefaultsOptions: "scope=both,enable-new=1",
    });
    
    import pulumi
    import pulumi_proxmoxve as proxmoxve
    
    with_groups = proxmoxve.realm.LdapLegacy("with_groups",
        realm="corporate-ldap",
        server1="ldap.corp.example.com",
        base_dn="ou=users,dc=corp,dc=example,dc=com",
        bind_dn="cn=svc_ldap,ou=services,dc=corp,dc=example,dc=com",
        bind_password=ldap_password,
        mode="ldap+starttls",
        group_dn="ou=groups,dc=corp,dc=example,dc=com",
        group_filter="(objectClass=groupOfNames)",
        group_name_attr="cn",
        sync_attributes="email=mail,firstname=givenName,lastname=sn",
        sync_defaults_options="scope=both,enable-new=1")
    
    package main
    
    import (
    	"github.com/muhlba91/pulumi-proxmoxve/sdk/v8/go/proxmoxve/realm"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := realm.NewLdapLegacy(ctx, "with_groups", &realm.LdapLegacyArgs{
    			Realm:               pulumi.String("corporate-ldap"),
    			Server1:             pulumi.String("ldap.corp.example.com"),
    			BaseDn:              pulumi.String("ou=users,dc=corp,dc=example,dc=com"),
    			BindDn:              pulumi.String("cn=svc_ldap,ou=services,dc=corp,dc=example,dc=com"),
    			BindPassword:        pulumi.Any(ldapPassword),
    			Mode:                pulumi.String("ldap+starttls"),
    			GroupDn:             pulumi.String("ou=groups,dc=corp,dc=example,dc=com"),
    			GroupFilter:         pulumi.String("(objectClass=groupOfNames)"),
    			GroupNameAttr:       pulumi.String("cn"),
    			SyncAttributes:      pulumi.String("email=mail,firstname=givenName,lastname=sn"),
    			SyncDefaultsOptions: pulumi.String("scope=both,enable-new=1"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using ProxmoxVE = Pulumi.ProxmoxVE;
    
    return await Deployment.RunAsync(() => 
    {
        var withGroups = new ProxmoxVE.Realm.LdapLegacy("with_groups", new()
        {
            Realm = "corporate-ldap",
            Server1 = "ldap.corp.example.com",
            BaseDn = "ou=users,dc=corp,dc=example,dc=com",
            BindDn = "cn=svc_ldap,ou=services,dc=corp,dc=example,dc=com",
            BindPassword = ldapPassword,
            Mode = "ldap+starttls",
            GroupDn = "ou=groups,dc=corp,dc=example,dc=com",
            GroupFilter = "(objectClass=groupOfNames)",
            GroupNameAttr = "cn",
            SyncAttributes = "email=mail,firstname=givenName,lastname=sn",
            SyncDefaultsOptions = "scope=both,enable-new=1",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import io.muehlbachler.pulumi.proxmoxve.realm.LdapLegacy;
    import io.muehlbachler.pulumi.proxmoxve.realm.LdapLegacyArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var withGroups = new LdapLegacy("withGroups", LdapLegacyArgs.builder()
                .realm("corporate-ldap")
                .server1("ldap.corp.example.com")
                .baseDn("ou=users,dc=corp,dc=example,dc=com")
                .bindDn("cn=svc_ldap,ou=services,dc=corp,dc=example,dc=com")
                .bindPassword(ldapPassword)
                .mode("ldap+starttls")
                .groupDn("ou=groups,dc=corp,dc=example,dc=com")
                .groupFilter("(objectClass=groupOfNames)")
                .groupNameAttr("cn")
                .syncAttributes("email=mail,firstname=givenName,lastname=sn")
                .syncDefaultsOptions("scope=both,enable-new=1")
                .build());
    
        }
    }
    
    resources:
      withGroups:
        type: proxmoxve:realm:LdapLegacy
        name: with_groups
        properties:
          realm: corporate-ldap
          server1: ldap.corp.example.com
          baseDn: ou=users,dc=corp,dc=example,dc=com
          bindDn: cn=svc_ldap,ou=services,dc=corp,dc=example,dc=com
          bindPassword: ${ldapPassword}
          mode: ldap+starttls
          groupDn: ou=groups,dc=corp,dc=example,dc=com
          groupFilter: (objectClass=groupOfNames)
          groupNameAttr: cn
          syncAttributes: email=mail,firstname=givenName,lastname=sn
          syncDefaultsOptions: scope=both,enable-new=1
    

    See Also

    Create LdapLegacy Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new LdapLegacy(name: string, args: LdapLegacyArgs, opts?: CustomResourceOptions);
    @overload
    def LdapLegacy(resource_name: str,
                   args: LdapLegacyArgs,
                   opts: Optional[ResourceOptions] = None)
    
    @overload
    def LdapLegacy(resource_name: str,
                   opts: Optional[ResourceOptions] = None,
                   base_dn: Optional[str] = None,
                   server1: Optional[str] = None,
                   realm: Optional[str] = None,
                   cert_path: Optional[str] = None,
                   mode: Optional[str] = None,
                   cert_key_path: Optional[str] = None,
                   ca_path: Optional[str] = None,
                   comment: Optional[str] = None,
                   default: Optional[bool] = None,
                   filter: Optional[str] = None,
                   group_classes: Optional[str] = None,
                   group_dn: Optional[str] = None,
                   group_filter: Optional[str] = None,
                   group_name_attr: Optional[str] = None,
                   case_sensitive: Optional[bool] = None,
                   port: Optional[int] = None,
                   bind_password: Optional[str] = None,
                   secure: Optional[bool] = None,
                   bind_dn: Optional[str] = None,
                   server2: Optional[str] = None,
                   ssl_version: Optional[str] = None,
                   sync_attributes: Optional[str] = None,
                   sync_defaults_options: Optional[str] = None,
                   user_attr: Optional[str] = None,
                   user_classes: Optional[str] = None,
                   verify: Optional[bool] = None)
    func NewLdapLegacy(ctx *Context, name string, args LdapLegacyArgs, opts ...ResourceOption) (*LdapLegacy, error)
    public LdapLegacy(string name, LdapLegacyArgs args, CustomResourceOptions? opts = null)
    public LdapLegacy(String name, LdapLegacyArgs args)
    public LdapLegacy(String name, LdapLegacyArgs args, CustomResourceOptions options)
    
    type: proxmoxve:realm:LdapLegacy
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args LdapLegacyArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args LdapLegacyArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args LdapLegacyArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args LdapLegacyArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args LdapLegacyArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var ldapLegacyResource = new ProxmoxVE.Realm.LdapLegacy("ldapLegacyResource", new()
    {
        BaseDn = "string",
        Server1 = "string",
        Realm = "string",
        CertPath = "string",
        Mode = "string",
        CertKeyPath = "string",
        CaPath = "string",
        Comment = "string",
        Default = false,
        Filter = "string",
        GroupClasses = "string",
        GroupDn = "string",
        GroupFilter = "string",
        GroupNameAttr = "string",
        CaseSensitive = false,
        Port = 0,
        BindPassword = "string",
        BindDn = "string",
        Server2 = "string",
        SslVersion = "string",
        SyncAttributes = "string",
        SyncDefaultsOptions = "string",
        UserAttr = "string",
        UserClasses = "string",
        Verify = false,
    });
    
    example, err := realm.NewLdapLegacy(ctx, "ldapLegacyResource", &realm.LdapLegacyArgs{
    	BaseDn:              pulumi.String("string"),
    	Server1:             pulumi.String("string"),
    	Realm:               pulumi.String("string"),
    	CertPath:            pulumi.String("string"),
    	Mode:                pulumi.String("string"),
    	CertKeyPath:         pulumi.String("string"),
    	CaPath:              pulumi.String("string"),
    	Comment:             pulumi.String("string"),
    	Default:             pulumi.Bool(false),
    	Filter:              pulumi.String("string"),
    	GroupClasses:        pulumi.String("string"),
    	GroupDn:             pulumi.String("string"),
    	GroupFilter:         pulumi.String("string"),
    	GroupNameAttr:       pulumi.String("string"),
    	CaseSensitive:       pulumi.Bool(false),
    	Port:                pulumi.Int(0),
    	BindPassword:        pulumi.String("string"),
    	BindDn:              pulumi.String("string"),
    	Server2:             pulumi.String("string"),
    	SslVersion:          pulumi.String("string"),
    	SyncAttributes:      pulumi.String("string"),
    	SyncDefaultsOptions: pulumi.String("string"),
    	UserAttr:            pulumi.String("string"),
    	UserClasses:         pulumi.String("string"),
    	Verify:              pulumi.Bool(false),
    })
    
    var ldapLegacyResource = new LdapLegacy("ldapLegacyResource", LdapLegacyArgs.builder()
        .baseDn("string")
        .server1("string")
        .realm("string")
        .certPath("string")
        .mode("string")
        .certKeyPath("string")
        .caPath("string")
        .comment("string")
        .default_(false)
        .filter("string")
        .groupClasses("string")
        .groupDn("string")
        .groupFilter("string")
        .groupNameAttr("string")
        .caseSensitive(false)
        .port(0)
        .bindPassword("string")
        .bindDn("string")
        .server2("string")
        .sslVersion("string")
        .syncAttributes("string")
        .syncDefaultsOptions("string")
        .userAttr("string")
        .userClasses("string")
        .verify(false)
        .build());
    
    ldap_legacy_resource = proxmoxve.realm.LdapLegacy("ldapLegacyResource",
        base_dn="string",
        server1="string",
        realm="string",
        cert_path="string",
        mode="string",
        cert_key_path="string",
        ca_path="string",
        comment="string",
        default=False,
        filter="string",
        group_classes="string",
        group_dn="string",
        group_filter="string",
        group_name_attr="string",
        case_sensitive=False,
        port=0,
        bind_password="string",
        bind_dn="string",
        server2="string",
        ssl_version="string",
        sync_attributes="string",
        sync_defaults_options="string",
        user_attr="string",
        user_classes="string",
        verify=False)
    
    const ldapLegacyResource = new proxmoxve.realm.LdapLegacy("ldapLegacyResource", {
        baseDn: "string",
        server1: "string",
        realm: "string",
        certPath: "string",
        mode: "string",
        certKeyPath: "string",
        caPath: "string",
        comment: "string",
        "default": false,
        filter: "string",
        groupClasses: "string",
        groupDn: "string",
        groupFilter: "string",
        groupNameAttr: "string",
        caseSensitive: false,
        port: 0,
        bindPassword: "string",
        bindDn: "string",
        server2: "string",
        sslVersion: "string",
        syncAttributes: "string",
        syncDefaultsOptions: "string",
        userAttr: "string",
        userClasses: "string",
        verify: false,
    });
    
    type: proxmoxve:realm:LdapLegacy
    properties:
        baseDn: string
        bindDn: string
        bindPassword: string
        caPath: string
        caseSensitive: false
        certKeyPath: string
        certPath: string
        comment: string
        default: false
        filter: string
        groupClasses: string
        groupDn: string
        groupFilter: string
        groupNameAttr: string
        mode: string
        port: 0
        realm: string
        server1: string
        server2: string
        sslVersion: string
        syncAttributes: string
        syncDefaultsOptions: string
        userAttr: string
        userClasses: string
        verify: false
    

    LdapLegacy Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The LdapLegacy resource accepts the following input properties:

    BaseDn string
    LDAP base DN for user searches (e.g., 'ou=users,dc=example,dc=com').
    Realm string
    Realm identifier (e.g., 'example.com').
    Server1 string
    Primary LDAP server hostname or IP address.
    BindDn string
    LDAP bind DN for authentication (e.g., 'cn=admin,dc=example,dc=com').
    BindPassword string
    Password for the bind DN. Note: stored in Proxmox but not returned by API.
    CaPath string
    Path to CA certificate file for SSL verification.
    CaseSensitive bool
    Enable case-sensitive username matching.
    CertKeyPath string
    Path to client certificate key.
    CertPath string
    Path to client certificate for SSL authentication.
    Comment string
    Description of the realm.
    Default bool
    Use this realm as the default for login.
    Filter string
    LDAP filter for user searches.
    GroupClasses string
    LDAP objectClasses for groups (comma-separated).
    GroupDn string
    LDAP base DN for group searches.
    GroupFilter string
    LDAP filter for group searches.
    GroupNameAttr string
    LDAP attribute representing the group name.
    Mode string
    LDAP connection mode (ldap, ldaps, ldap+starttls).
    Port int
    LDAP server port. Default: 389 (LDAP) or 636 (LDAPS).
    Secure bool
    Use LDAPS (LDAP over SSL/TLS) instead of plain LDAP.

    Deprecated: Deprecated by Proxmox: use mode instead.

    Server2 string
    Fallback LDAP server hostname or IP address.
    SslVersion string
    SSL/TLS version (tlsv1, tlsv11, tlsv12, tlsv1_3).
    SyncAttributes string
    Comma-separated list of attributes to sync (e.g., 'email=mail,firstname=givenName').
    SyncDefaultsOptions string
    Default synchronization options. Format: comma-separated 'key=value' pairs. Valid keys: 'scope' (users/groups/both), 'enable-new' (1/0), 'remove-vanished' (semicolon-separated: entry/acl/properties), 'full' (deprecated), 'purge' (deprecated). Example: 'scope=users,enable-new=1,remove-vanished=entry;acl'.
    UserAttr string
    LDAP attribute representing the username.
    UserClasses string
    LDAP objectClasses for users (comma-separated).
    Verify bool
    Verify LDAP server SSL certificate.
    BaseDn string
    LDAP base DN for user searches (e.g., 'ou=users,dc=example,dc=com').
    Realm string
    Realm identifier (e.g., 'example.com').
    Server1 string
    Primary LDAP server hostname or IP address.
    BindDn string
    LDAP bind DN for authentication (e.g., 'cn=admin,dc=example,dc=com').
    BindPassword string
    Password for the bind DN. Note: stored in Proxmox but not returned by API.
    CaPath string
    Path to CA certificate file for SSL verification.
    CaseSensitive bool
    Enable case-sensitive username matching.
    CertKeyPath string
    Path to client certificate key.
    CertPath string
    Path to client certificate for SSL authentication.
    Comment string
    Description of the realm.
    Default bool
    Use this realm as the default for login.
    Filter string
    LDAP filter for user searches.
    GroupClasses string
    LDAP objectClasses for groups (comma-separated).
    GroupDn string
    LDAP base DN for group searches.
    GroupFilter string
    LDAP filter for group searches.
    GroupNameAttr string
    LDAP attribute representing the group name.
    Mode string
    LDAP connection mode (ldap, ldaps, ldap+starttls).
    Port int
    LDAP server port. Default: 389 (LDAP) or 636 (LDAPS).
    Secure bool
    Use LDAPS (LDAP over SSL/TLS) instead of plain LDAP.

    Deprecated: Deprecated by Proxmox: use mode instead.

    Server2 string
    Fallback LDAP server hostname or IP address.
    SslVersion string
    SSL/TLS version (tlsv1, tlsv11, tlsv12, tlsv1_3).
    SyncAttributes string
    Comma-separated list of attributes to sync (e.g., 'email=mail,firstname=givenName').
    SyncDefaultsOptions string
    Default synchronization options. Format: comma-separated 'key=value' pairs. Valid keys: 'scope' (users/groups/both), 'enable-new' (1/0), 'remove-vanished' (semicolon-separated: entry/acl/properties), 'full' (deprecated), 'purge' (deprecated). Example: 'scope=users,enable-new=1,remove-vanished=entry;acl'.
    UserAttr string
    LDAP attribute representing the username.
    UserClasses string
    LDAP objectClasses for users (comma-separated).
    Verify bool
    Verify LDAP server SSL certificate.
    baseDn String
    LDAP base DN for user searches (e.g., 'ou=users,dc=example,dc=com').
    realm String
    Realm identifier (e.g., 'example.com').
    server1 String
    Primary LDAP server hostname or IP address.
    bindDn String
    LDAP bind DN for authentication (e.g., 'cn=admin,dc=example,dc=com').
    bindPassword String
    Password for the bind DN. Note: stored in Proxmox but not returned by API.
    caPath String
    Path to CA certificate file for SSL verification.
    caseSensitive Boolean
    Enable case-sensitive username matching.
    certKeyPath String
    Path to client certificate key.
    certPath String
    Path to client certificate for SSL authentication.
    comment String
    Description of the realm.
    default_ Boolean
    Use this realm as the default for login.
    filter String
    LDAP filter for user searches.
    groupClasses String
    LDAP objectClasses for groups (comma-separated).
    groupDn String
    LDAP base DN for group searches.
    groupFilter String
    LDAP filter for group searches.
    groupNameAttr String
    LDAP attribute representing the group name.
    mode String
    LDAP connection mode (ldap, ldaps, ldap+starttls).
    port Integer
    LDAP server port. Default: 389 (LDAP) or 636 (LDAPS).
    secure Boolean
    Use LDAPS (LDAP over SSL/TLS) instead of plain LDAP.

    Deprecated: Deprecated by Proxmox: use mode instead.

    server2 String
    Fallback LDAP server hostname or IP address.
    sslVersion String
    SSL/TLS version (tlsv1, tlsv11, tlsv12, tlsv1_3).
    syncAttributes String
    Comma-separated list of attributes to sync (e.g., 'email=mail,firstname=givenName').
    syncDefaultsOptions String
    Default synchronization options. Format: comma-separated 'key=value' pairs. Valid keys: 'scope' (users/groups/both), 'enable-new' (1/0), 'remove-vanished' (semicolon-separated: entry/acl/properties), 'full' (deprecated), 'purge' (deprecated). Example: 'scope=users,enable-new=1,remove-vanished=entry;acl'.
    userAttr String
    LDAP attribute representing the username.
    userClasses String
    LDAP objectClasses for users (comma-separated).
    verify Boolean
    Verify LDAP server SSL certificate.
    baseDn string
    LDAP base DN for user searches (e.g., 'ou=users,dc=example,dc=com').
    realm string
    Realm identifier (e.g., 'example.com').
    server1 string
    Primary LDAP server hostname or IP address.
    bindDn string
    LDAP bind DN for authentication (e.g., 'cn=admin,dc=example,dc=com').
    bindPassword string
    Password for the bind DN. Note: stored in Proxmox but not returned by API.
    caPath string
    Path to CA certificate file for SSL verification.
    caseSensitive boolean
    Enable case-sensitive username matching.
    certKeyPath string
    Path to client certificate key.
    certPath string
    Path to client certificate for SSL authentication.
    comment string
    Description of the realm.
    default boolean
    Use this realm as the default for login.
    filter string
    LDAP filter for user searches.
    groupClasses string
    LDAP objectClasses for groups (comma-separated).
    groupDn string
    LDAP base DN for group searches.
    groupFilter string
    LDAP filter for group searches.
    groupNameAttr string
    LDAP attribute representing the group name.
    mode string
    LDAP connection mode (ldap, ldaps, ldap+starttls).
    port number
    LDAP server port. Default: 389 (LDAP) or 636 (LDAPS).
    secure boolean
    Use LDAPS (LDAP over SSL/TLS) instead of plain LDAP.

    Deprecated: Deprecated by Proxmox: use mode instead.

    server2 string
    Fallback LDAP server hostname or IP address.
    sslVersion string
    SSL/TLS version (tlsv1, tlsv11, tlsv12, tlsv1_3).
    syncAttributes string
    Comma-separated list of attributes to sync (e.g., 'email=mail,firstname=givenName').
    syncDefaultsOptions string
    Default synchronization options. Format: comma-separated 'key=value' pairs. Valid keys: 'scope' (users/groups/both), 'enable-new' (1/0), 'remove-vanished' (semicolon-separated: entry/acl/properties), 'full' (deprecated), 'purge' (deprecated). Example: 'scope=users,enable-new=1,remove-vanished=entry;acl'.
    userAttr string
    LDAP attribute representing the username.
    userClasses string
    LDAP objectClasses for users (comma-separated).
    verify boolean
    Verify LDAP server SSL certificate.
    base_dn str
    LDAP base DN for user searches (e.g., 'ou=users,dc=example,dc=com').
    realm str
    Realm identifier (e.g., 'example.com').
    server1 str
    Primary LDAP server hostname or IP address.
    bind_dn str
    LDAP bind DN for authentication (e.g., 'cn=admin,dc=example,dc=com').
    bind_password str
    Password for the bind DN. Note: stored in Proxmox but not returned by API.
    ca_path str
    Path to CA certificate file for SSL verification.
    case_sensitive bool
    Enable case-sensitive username matching.
    cert_key_path str
    Path to client certificate key.
    cert_path str
    Path to client certificate for SSL authentication.
    comment str
    Description of the realm.
    default bool
    Use this realm as the default for login.
    filter str
    LDAP filter for user searches.
    group_classes str
    LDAP objectClasses for groups (comma-separated).
    group_dn str
    LDAP base DN for group searches.
    group_filter str
    LDAP filter for group searches.
    group_name_attr str
    LDAP attribute representing the group name.
    mode str
    LDAP connection mode (ldap, ldaps, ldap+starttls).
    port int
    LDAP server port. Default: 389 (LDAP) or 636 (LDAPS).
    secure bool
    Use LDAPS (LDAP over SSL/TLS) instead of plain LDAP.

    Deprecated: Deprecated by Proxmox: use mode instead.

    server2 str
    Fallback LDAP server hostname or IP address.
    ssl_version str
    SSL/TLS version (tlsv1, tlsv11, tlsv12, tlsv1_3).
    sync_attributes str
    Comma-separated list of attributes to sync (e.g., 'email=mail,firstname=givenName').
    sync_defaults_options str
    Default synchronization options. Format: comma-separated 'key=value' pairs. Valid keys: 'scope' (users/groups/both), 'enable-new' (1/0), 'remove-vanished' (semicolon-separated: entry/acl/properties), 'full' (deprecated), 'purge' (deprecated). Example: 'scope=users,enable-new=1,remove-vanished=entry;acl'.
    user_attr str
    LDAP attribute representing the username.
    user_classes str
    LDAP objectClasses for users (comma-separated).
    verify bool
    Verify LDAP server SSL certificate.
    baseDn String
    LDAP base DN for user searches (e.g., 'ou=users,dc=example,dc=com').
    realm String
    Realm identifier (e.g., 'example.com').
    server1 String
    Primary LDAP server hostname or IP address.
    bindDn String
    LDAP bind DN for authentication (e.g., 'cn=admin,dc=example,dc=com').
    bindPassword String
    Password for the bind DN. Note: stored in Proxmox but not returned by API.
    caPath String
    Path to CA certificate file for SSL verification.
    caseSensitive Boolean
    Enable case-sensitive username matching.
    certKeyPath String
    Path to client certificate key.
    certPath String
    Path to client certificate for SSL authentication.
    comment String
    Description of the realm.
    default Boolean
    Use this realm as the default for login.
    filter String
    LDAP filter for user searches.
    groupClasses String
    LDAP objectClasses for groups (comma-separated).
    groupDn String
    LDAP base DN for group searches.
    groupFilter String
    LDAP filter for group searches.
    groupNameAttr String
    LDAP attribute representing the group name.
    mode String
    LDAP connection mode (ldap, ldaps, ldap+starttls).
    port Number
    LDAP server port. Default: 389 (LDAP) or 636 (LDAPS).
    secure Boolean
    Use LDAPS (LDAP over SSL/TLS) instead of plain LDAP.

    Deprecated: Deprecated by Proxmox: use mode instead.

    server2 String
    Fallback LDAP server hostname or IP address.
    sslVersion String
    SSL/TLS version (tlsv1, tlsv11, tlsv12, tlsv1_3).
    syncAttributes String
    Comma-separated list of attributes to sync (e.g., 'email=mail,firstname=givenName').
    syncDefaultsOptions String
    Default synchronization options. Format: comma-separated 'key=value' pairs. Valid keys: 'scope' (users/groups/both), 'enable-new' (1/0), 'remove-vanished' (semicolon-separated: entry/acl/properties), 'full' (deprecated), 'purge' (deprecated). Example: 'scope=users,enable-new=1,remove-vanished=entry;acl'.
    userAttr String
    LDAP attribute representing the username.
    userClasses String
    LDAP objectClasses for users (comma-separated).
    verify Boolean
    Verify LDAP server SSL certificate.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the LdapLegacy resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing LdapLegacy Resource

    Get an existing LdapLegacy resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: LdapLegacyState, opts?: CustomResourceOptions): LdapLegacy
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            base_dn: Optional[str] = None,
            bind_dn: Optional[str] = None,
            bind_password: Optional[str] = None,
            ca_path: Optional[str] = None,
            case_sensitive: Optional[bool] = None,
            cert_key_path: Optional[str] = None,
            cert_path: Optional[str] = None,
            comment: Optional[str] = None,
            default: Optional[bool] = None,
            filter: Optional[str] = None,
            group_classes: Optional[str] = None,
            group_dn: Optional[str] = None,
            group_filter: Optional[str] = None,
            group_name_attr: Optional[str] = None,
            mode: Optional[str] = None,
            port: Optional[int] = None,
            realm: Optional[str] = None,
            secure: Optional[bool] = None,
            server1: Optional[str] = None,
            server2: Optional[str] = None,
            ssl_version: Optional[str] = None,
            sync_attributes: Optional[str] = None,
            sync_defaults_options: Optional[str] = None,
            user_attr: Optional[str] = None,
            user_classes: Optional[str] = None,
            verify: Optional[bool] = None) -> LdapLegacy
    func GetLdapLegacy(ctx *Context, name string, id IDInput, state *LdapLegacyState, opts ...ResourceOption) (*LdapLegacy, error)
    public static LdapLegacy Get(string name, Input<string> id, LdapLegacyState? state, CustomResourceOptions? opts = null)
    public static LdapLegacy get(String name, Output<String> id, LdapLegacyState state, CustomResourceOptions options)
    resources:  _:    type: proxmoxve:realm:LdapLegacy    get:      id: ${id}
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    BaseDn string
    LDAP base DN for user searches (e.g., 'ou=users,dc=example,dc=com').
    BindDn string
    LDAP bind DN for authentication (e.g., 'cn=admin,dc=example,dc=com').
    BindPassword string
    Password for the bind DN. Note: stored in Proxmox but not returned by API.
    CaPath string
    Path to CA certificate file for SSL verification.
    CaseSensitive bool
    Enable case-sensitive username matching.
    CertKeyPath string
    Path to client certificate key.
    CertPath string
    Path to client certificate for SSL authentication.
    Comment string
    Description of the realm.
    Default bool
    Use this realm as the default for login.
    Filter string
    LDAP filter for user searches.
    GroupClasses string
    LDAP objectClasses for groups (comma-separated).
    GroupDn string
    LDAP base DN for group searches.
    GroupFilter string
    LDAP filter for group searches.
    GroupNameAttr string
    LDAP attribute representing the group name.
    Mode string
    LDAP connection mode (ldap, ldaps, ldap+starttls).
    Port int
    LDAP server port. Default: 389 (LDAP) or 636 (LDAPS).
    Realm string
    Realm identifier (e.g., 'example.com').
    Secure bool
    Use LDAPS (LDAP over SSL/TLS) instead of plain LDAP.

    Deprecated: Deprecated by Proxmox: use mode instead.

    Server1 string
    Primary LDAP server hostname or IP address.
    Server2 string
    Fallback LDAP server hostname or IP address.
    SslVersion string
    SSL/TLS version (tlsv1, tlsv11, tlsv12, tlsv1_3).
    SyncAttributes string
    Comma-separated list of attributes to sync (e.g., 'email=mail,firstname=givenName').
    SyncDefaultsOptions string
    Default synchronization options. Format: comma-separated 'key=value' pairs. Valid keys: 'scope' (users/groups/both), 'enable-new' (1/0), 'remove-vanished' (semicolon-separated: entry/acl/properties), 'full' (deprecated), 'purge' (deprecated). Example: 'scope=users,enable-new=1,remove-vanished=entry;acl'.
    UserAttr string
    LDAP attribute representing the username.
    UserClasses string
    LDAP objectClasses for users (comma-separated).
    Verify bool
    Verify LDAP server SSL certificate.
    BaseDn string
    LDAP base DN for user searches (e.g., 'ou=users,dc=example,dc=com').
    BindDn string
    LDAP bind DN for authentication (e.g., 'cn=admin,dc=example,dc=com').
    BindPassword string
    Password for the bind DN. Note: stored in Proxmox but not returned by API.
    CaPath string
    Path to CA certificate file for SSL verification.
    CaseSensitive bool
    Enable case-sensitive username matching.
    CertKeyPath string
    Path to client certificate key.
    CertPath string
    Path to client certificate for SSL authentication.
    Comment string
    Description of the realm.
    Default bool
    Use this realm as the default for login.
    Filter string
    LDAP filter for user searches.
    GroupClasses string
    LDAP objectClasses for groups (comma-separated).
    GroupDn string
    LDAP base DN for group searches.
    GroupFilter string
    LDAP filter for group searches.
    GroupNameAttr string
    LDAP attribute representing the group name.
    Mode string
    LDAP connection mode (ldap, ldaps, ldap+starttls).
    Port int
    LDAP server port. Default: 389 (LDAP) or 636 (LDAPS).
    Realm string
    Realm identifier (e.g., 'example.com').
    Secure bool
    Use LDAPS (LDAP over SSL/TLS) instead of plain LDAP.

    Deprecated: Deprecated by Proxmox: use mode instead.

    Server1 string
    Primary LDAP server hostname or IP address.
    Server2 string
    Fallback LDAP server hostname or IP address.
    SslVersion string
    SSL/TLS version (tlsv1, tlsv11, tlsv12, tlsv1_3).
    SyncAttributes string
    Comma-separated list of attributes to sync (e.g., 'email=mail,firstname=givenName').
    SyncDefaultsOptions string
    Default synchronization options. Format: comma-separated 'key=value' pairs. Valid keys: 'scope' (users/groups/both), 'enable-new' (1/0), 'remove-vanished' (semicolon-separated: entry/acl/properties), 'full' (deprecated), 'purge' (deprecated). Example: 'scope=users,enable-new=1,remove-vanished=entry;acl'.
    UserAttr string
    LDAP attribute representing the username.
    UserClasses string
    LDAP objectClasses for users (comma-separated).
    Verify bool
    Verify LDAP server SSL certificate.
    baseDn String
    LDAP base DN for user searches (e.g., 'ou=users,dc=example,dc=com').
    bindDn String
    LDAP bind DN for authentication (e.g., 'cn=admin,dc=example,dc=com').
    bindPassword String
    Password for the bind DN. Note: stored in Proxmox but not returned by API.
    caPath String
    Path to CA certificate file for SSL verification.
    caseSensitive Boolean
    Enable case-sensitive username matching.
    certKeyPath String
    Path to client certificate key.
    certPath String
    Path to client certificate for SSL authentication.
    comment String
    Description of the realm.
    default_ Boolean
    Use this realm as the default for login.
    filter String
    LDAP filter for user searches.
    groupClasses String
    LDAP objectClasses for groups (comma-separated).
    groupDn String
    LDAP base DN for group searches.
    groupFilter String
    LDAP filter for group searches.
    groupNameAttr String
    LDAP attribute representing the group name.
    mode String
    LDAP connection mode (ldap, ldaps, ldap+starttls).
    port Integer
    LDAP server port. Default: 389 (LDAP) or 636 (LDAPS).
    realm String
    Realm identifier (e.g., 'example.com').
    secure Boolean
    Use LDAPS (LDAP over SSL/TLS) instead of plain LDAP.

    Deprecated: Deprecated by Proxmox: use mode instead.

    server1 String
    Primary LDAP server hostname or IP address.
    server2 String
    Fallback LDAP server hostname or IP address.
    sslVersion String
    SSL/TLS version (tlsv1, tlsv11, tlsv12, tlsv1_3).
    syncAttributes String
    Comma-separated list of attributes to sync (e.g., 'email=mail,firstname=givenName').
    syncDefaultsOptions String
    Default synchronization options. Format: comma-separated 'key=value' pairs. Valid keys: 'scope' (users/groups/both), 'enable-new' (1/0), 'remove-vanished' (semicolon-separated: entry/acl/properties), 'full' (deprecated), 'purge' (deprecated). Example: 'scope=users,enable-new=1,remove-vanished=entry;acl'.
    userAttr String
    LDAP attribute representing the username.
    userClasses String
    LDAP objectClasses for users (comma-separated).
    verify Boolean
    Verify LDAP server SSL certificate.
    baseDn string
    LDAP base DN for user searches (e.g., 'ou=users,dc=example,dc=com').
    bindDn string
    LDAP bind DN for authentication (e.g., 'cn=admin,dc=example,dc=com').
    bindPassword string
    Password for the bind DN. Note: stored in Proxmox but not returned by API.
    caPath string
    Path to CA certificate file for SSL verification.
    caseSensitive boolean
    Enable case-sensitive username matching.
    certKeyPath string
    Path to client certificate key.
    certPath string
    Path to client certificate for SSL authentication.
    comment string
    Description of the realm.
    default boolean
    Use this realm as the default for login.
    filter string
    LDAP filter for user searches.
    groupClasses string
    LDAP objectClasses for groups (comma-separated).
    groupDn string
    LDAP base DN for group searches.
    groupFilter string
    LDAP filter for group searches.
    groupNameAttr string
    LDAP attribute representing the group name.
    mode string
    LDAP connection mode (ldap, ldaps, ldap+starttls).
    port number
    LDAP server port. Default: 389 (LDAP) or 636 (LDAPS).
    realm string
    Realm identifier (e.g., 'example.com').
    secure boolean
    Use LDAPS (LDAP over SSL/TLS) instead of plain LDAP.

    Deprecated: Deprecated by Proxmox: use mode instead.

    server1 string
    Primary LDAP server hostname or IP address.
    server2 string
    Fallback LDAP server hostname or IP address.
    sslVersion string
    SSL/TLS version (tlsv1, tlsv11, tlsv12, tlsv1_3).
    syncAttributes string
    Comma-separated list of attributes to sync (e.g., 'email=mail,firstname=givenName').
    syncDefaultsOptions string
    Default synchronization options. Format: comma-separated 'key=value' pairs. Valid keys: 'scope' (users/groups/both), 'enable-new' (1/0), 'remove-vanished' (semicolon-separated: entry/acl/properties), 'full' (deprecated), 'purge' (deprecated). Example: 'scope=users,enable-new=1,remove-vanished=entry;acl'.
    userAttr string
    LDAP attribute representing the username.
    userClasses string
    LDAP objectClasses for users (comma-separated).
    verify boolean
    Verify LDAP server SSL certificate.
    base_dn str
    LDAP base DN for user searches (e.g., 'ou=users,dc=example,dc=com').
    bind_dn str
    LDAP bind DN for authentication (e.g., 'cn=admin,dc=example,dc=com').
    bind_password str
    Password for the bind DN. Note: stored in Proxmox but not returned by API.
    ca_path str
    Path to CA certificate file for SSL verification.
    case_sensitive bool
    Enable case-sensitive username matching.
    cert_key_path str
    Path to client certificate key.
    cert_path str
    Path to client certificate for SSL authentication.
    comment str
    Description of the realm.
    default bool
    Use this realm as the default for login.
    filter str
    LDAP filter for user searches.
    group_classes str
    LDAP objectClasses for groups (comma-separated).
    group_dn str
    LDAP base DN for group searches.
    group_filter str
    LDAP filter for group searches.
    group_name_attr str
    LDAP attribute representing the group name.
    mode str
    LDAP connection mode (ldap, ldaps, ldap+starttls).
    port int
    LDAP server port. Default: 389 (LDAP) or 636 (LDAPS).
    realm str
    Realm identifier (e.g., 'example.com').
    secure bool
    Use LDAPS (LDAP over SSL/TLS) instead of plain LDAP.

    Deprecated: Deprecated by Proxmox: use mode instead.

    server1 str
    Primary LDAP server hostname or IP address.
    server2 str
    Fallback LDAP server hostname or IP address.
    ssl_version str
    SSL/TLS version (tlsv1, tlsv11, tlsv12, tlsv1_3).
    sync_attributes str
    Comma-separated list of attributes to sync (e.g., 'email=mail,firstname=givenName').
    sync_defaults_options str
    Default synchronization options. Format: comma-separated 'key=value' pairs. Valid keys: 'scope' (users/groups/both), 'enable-new' (1/0), 'remove-vanished' (semicolon-separated: entry/acl/properties), 'full' (deprecated), 'purge' (deprecated). Example: 'scope=users,enable-new=1,remove-vanished=entry;acl'.
    user_attr str
    LDAP attribute representing the username.
    user_classes str
    LDAP objectClasses for users (comma-separated).
    verify bool
    Verify LDAP server SSL certificate.
    baseDn String
    LDAP base DN for user searches (e.g., 'ou=users,dc=example,dc=com').
    bindDn String
    LDAP bind DN for authentication (e.g., 'cn=admin,dc=example,dc=com').
    bindPassword String
    Password for the bind DN. Note: stored in Proxmox but not returned by API.
    caPath String
    Path to CA certificate file for SSL verification.
    caseSensitive Boolean
    Enable case-sensitive username matching.
    certKeyPath String
    Path to client certificate key.
    certPath String
    Path to client certificate for SSL authentication.
    comment String
    Description of the realm.
    default Boolean
    Use this realm as the default for login.
    filter String
    LDAP filter for user searches.
    groupClasses String
    LDAP objectClasses for groups (comma-separated).
    groupDn String
    LDAP base DN for group searches.
    groupFilter String
    LDAP filter for group searches.
    groupNameAttr String
    LDAP attribute representing the group name.
    mode String
    LDAP connection mode (ldap, ldaps, ldap+starttls).
    port Number
    LDAP server port. Default: 389 (LDAP) or 636 (LDAPS).
    realm String
    Realm identifier (e.g., 'example.com').
    secure Boolean
    Use LDAPS (LDAP over SSL/TLS) instead of plain LDAP.

    Deprecated: Deprecated by Proxmox: use mode instead.

    server1 String
    Primary LDAP server hostname or IP address.
    server2 String
    Fallback LDAP server hostname or IP address.
    sslVersion String
    SSL/TLS version (tlsv1, tlsv11, tlsv12, tlsv1_3).
    syncAttributes String
    Comma-separated list of attributes to sync (e.g., 'email=mail,firstname=givenName').
    syncDefaultsOptions String
    Default synchronization options. Format: comma-separated 'key=value' pairs. Valid keys: 'scope' (users/groups/both), 'enable-new' (1/0), 'remove-vanished' (semicolon-separated: entry/acl/properties), 'full' (deprecated), 'purge' (deprecated). Example: 'scope=users,enable-new=1,remove-vanished=entry;acl'.
    userAttr String
    LDAP attribute representing the username.
    userClasses String
    LDAP objectClasses for users (comma-separated).
    verify Boolean
    Verify LDAP server SSL certificate.

    Import

    !/usr/bin/env sh LDAP realms can be imported using the realm identifier, e.g.:

    $ pulumi import proxmoxve:realm/ldapLegacy:LdapLegacy example example.com
    

    When importing, the bindPassword attribute cannot be imported since it’s not returned by the Proxmox API. You’ll need to set this attribute in your Terraform configuration after the import to manage it with Terraform.

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    proxmoxve muhlba91/pulumi-proxmoxve
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the proxmox Terraform Provider.
    proxmoxve logo
    Viewing docs for Proxmox Virtual Environment (Proxmox VE) v8.0.0
    published on Sunday, Apr 5, 2026 by Daniel Muehlbachler-Pietrzykowski
      Try Pulumi Cloud free. Your team will thank you.