Create the LDAP configuration for the cluster
POST /security/authentication/cluster/ldap
Introduced In: 9.6
A cluster can have only one LDAP configuration. IPv6 must be enabled if IPv6 family addresses are specified.
Required properties
-
servers
- List of LDAP servers used for this client configuration. -
bind_dn
- Specifies the user that binds to the LDAP servers. -
base_dn
- Specifies the default base DN for all searches.
Recommended optional properties
-
schema
- Schema template name. -
port
- Port used to connect to the LDAP Servers. -
ldaps_enabled
- Specifies whether or not LDAPS is enabled. -
min_bind_level
- Minimum bind authentication level. -
bind_password
- Specifies the bind password for the LDAP servers. -
base_scope
- Specifies the default search scope for LDAP queries. -
use_start_tls
- Specifies whether or not to use Start TLS over LDAP connections. -
session_security
- Specifies the level of security to be used for LDAP communications. -
bind_as_cifs_server
- Indicates if CIFS server's credentials are used to bind to the LDAP server. -
query_timeout
- Maximum time to wait for a query response from the LDAP server, in seconds. -
user_dn
- User Distinguished Name (DN) used as the starting point in the LDAP directory tree for user lookups. -
user_scope
- Default search scope for LDAP for user lookups. -
group_dn
- Group Distinguished Name (DN) used as the starting point in the LDAP directory tree for group lookups. -
group_scope
- Default search scope for LDAP for group lookups. -
netgroup_dn
- Netgroup Distinguished Name (DN) used as the starting point in the LDAP directory tree for netgroup lookups. -
netgroup_scope
- Default search scope for LDAP for netgroup lookups. -
netgroup_byhost_dn
- Netgroup Distinguished Name (DN) used as the starting point in the LDAP directory tree for netgroup by host lookups. -
netgroup_byhost_scope
- Default search scope for LDAP for netgroup by host lookups. -
is_netgroup_byhost_enabled
- Specifies whether netgroup by host querying is enabled. -
group_membership_filter
- Custom filter used for group membership lookup from an LDAP server. -
skip_config_validation
- Indicates whether or not the validation for the specified LDAP configuration is disabled.
Default property values
-
schema
- RFC-2307 -
port
- 389 -
ldaps_enabled
- false -
min_bind_level
- simple -
base_scope
- subtree -
use_start_tls
- false -
session_security
- none -
query_timeout
- 3 -
user_scope
- subtree -
group_scope
- subtree -
netgroup_scope
- subtree -
netgroup_byhost_scope
- subtree -
is_netgroup_byhost_enabled
- false -
skip_config_validation
- false -
try_channel_binding
- true
Configuring more than one LDAP server is recommended to avoid a single point of failure. Both FQDNs and IP addresses are supported for the servers
property.
The LDAP servers are validated as part of this operation. LDAP validation fails in the following scenarios:
-
The server does not have LDAP installed.
-
The server is invalid.
-
The server is unreachable.
Request Body
Name | Type | Description |
---|---|---|
_links |
||
base_dn |
string |
Specifies the default base DN for all searches. |
base_scope |
string |
Specifies the default search scope for LDAP queries:
|
bind_as_cifs_server |
boolean |
Specifies whether or not CIFS server's credentials are used to bind to the LDAP server. |
bind_dn |
string |
Specifies the user that binds to the LDAP servers. |
bind_password |
string |
Specifies the bind password for the LDAP servers. |
group_dn |
string |
Specifies the group Distinguished Name (DN) that is used as the starting point in the LDAP directory tree for group lookups. |
group_membership_filter |
string |
Specifies the custom filter used for group membership lookups from an LDAP server. |
group_scope |
string |
Specifies the default search scope for LDAP for group lookups:
|
is_netgroup_byhost_enabled |
boolean |
Specifies whether or not netgroup by host querying is enabled. |
is_owner |
boolean |
Specifies whether or not the SVM owns the LDAP client configuration. |
ldaps_enabled |
boolean |
Specifies whether or not LDAPS is enabled. |
min_bind_level |
string |
The minimum bind authentication level. Possible values are:
|
netgroup_byhost_dn |
string |
Specifies the netgroup Distinguished Name (DN) that is used as the starting point in the LDAP directory tree for netgroup by host lookups. |
netgroup_byhost_scope |
string |
Specifies the default search scope for LDAP for netgroup by host lookups:
|
netgroup_dn |
string |
Specifies the netgroup Distinguished Name (DN) that is used as the starting point in the LDAP directory tree for netgroup lookups. |
netgroup_scope |
string |
Specifies the default search scope for LDAP for netgroup lookups:
|
port |
integer |
The port used to connect to the LDAP Servers. |
query_timeout |
integer |
Specifies the maximum time to wait for a query response from the LDAP server, in seconds. |
schema |
string |
The name of the schema template used by the SVM.
|
servers |
array[string] |
|
session_security |
string |
Specifies the level of security to be used for LDAP communications:
|
skip_config_validation |
boolean |
Indicates whether or not the validation for the specified LDAP configuration is disabled. |
status |
||
try_channel_binding |
boolean |
Specifies whether or not channel binding is attempted in the case of TLS/LDAPS. |
use_start_tls |
boolean |
Specifies whether or not to use Start TLS over LDAP connections. |
user_dn |
string |
Specifies the user Distinguished Name (DN) that is used as the starting point in the LDAP directory tree for user lookups. |
user_scope |
string |
Specifies the default search scope for LDAP for user lookups:
|
Example request
{
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"base_dn": "string",
"base_scope": "string",
"bind_dn": "string",
"bind_password": "string",
"group_dn": "string",
"group_membership_filter": "string",
"group_scope": "string",
"min_bind_level": "string",
"netgroup_byhost_dn": "string",
"netgroup_byhost_scope": "string",
"netgroup_dn": "string",
"netgroup_scope": "string",
"port": 389,
"schema": "string",
"servers": [
"string"
],
"session_security": "string",
"status": {
"code": 65537300,
"dn_message": [
"string"
],
"ipv4_state": "string",
"ipv6_state": "string",
"message": "string",
"state": "string"
},
"user_dn": "string",
"user_scope": "string"
}
Response
Status: 201, Created
Name | Type | Description |
---|---|---|
_links |
||
num_records |
integer |
Number of LDAP records. |
records |
array[ldap_service] |
Example response
{
"_links": {
"next": {
"href": "/api/resourcelink"
},
"self": {
"href": "/api/resourcelink"
}
},
"num_records": 1,
"records": [
{
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"ad_domain": "string",
"base_dn": "string",
"base_scope": "string",
"bind_dn": "string",
"bind_password": "string",
"group_dn": "string",
"group_membership_filter": "string",
"group_scope": "string",
"min_bind_level": "string",
"netgroup_byhost_dn": "string",
"netgroup_byhost_scope": "string",
"netgroup_dn": "string",
"netgroup_scope": "string",
"port": 389,
"preferred_ad_servers": [
"string"
],
"schema": "string",
"servers": [
"string"
],
"session_security": "string",
"status": {
"code": 65537300,
"dn_message": [
"string"
],
"ipv4_state": "string",
"ipv6_state": "string",
"message": "string",
"state": "string"
},
"svm": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "svm1",
"uuid": "02c9e252-41be-11e9-81d5-00a0986138f7"
},
"user_dn": "string",
"user_scope": "string"
}
]
}
Headers
Name | Description | Type |
---|---|---|
Location |
Useful for tracking the resource location |
string |
Error
Status: Default
ONTAP Error Response Codes
Error Code | Description |
---|---|
4915203 |
The specified LDAP schema does not exist. |
262222 |
The specified LDAP servers contain duplicate server entries. |
4915229 |
DNS resolution failed due to an internal error. Contact technical support if this issue persists. |
4915231 |
DNS resolution failed for one or more of the specified LDAP servers. Verify that a valid DNS server is configured. |
23724132 |
DNS resolution failed for all the specified LDAP servers. Verify that a valid DNS server is configured. |
4915234 |
The specified LDAP server is not supported because it is one of the following: multicast, loopback, 0.0.0.0, or broadcast. |
4915248 |
LDAP servers cannot be empty or "-". Specified FQDN is invalid because it is empty or "-" or it contains either special characters or "-" at the start or end of the domain. |
4915251 |
STARTTLS and LDAPS cannot be used together. |
4915257 |
The LDAP configuration is invalid. Verify that bind-dn and bind password are correct. |
4915258 |
The LDAP configuration is invalid. Verify that the servers are reachable and that the network configuration is correct. |
13434916 |
The SVM is in the process of being created. Wait a few minutes, and then try the command again. |
23724130 |
Cannot use an IPv6 name server address because there are no IPv6 interfaces. |
4915252 |
LDAP referral is not supported with STARTTLS, with session security levels sign, seal or with LDAPS. |
Name | Type | Description |
---|---|---|
error |
Example error
{
"error": {
"arguments": [
{
"code": "string",
"message": "string"
}
],
"code": "4",
"message": "entry doesn't exist",
"target": "uuid"
}
}
Definitions
See Definitions
href
Name | Type | Description |
---|---|---|
href |
string |
_links
Name | Type | Description |
---|---|---|
self |
status
Name | Type | Description |
---|---|---|
code |
integer |
Code corresponding to the error message. If there is no error, it will be 0 to indicate success. |
dn_message |
array[string] |
|
ipv4_state |
string |
The status of the LDAP service with IPv4 address. |
ipv6_state |
string |
The status of the LDAP service with IPv6 address. |
message |
string |
Provides additional details on the error if |
state |
string |
The status of the LDAP service for the SVM. The LDAP service is up if either |
cluster_ldap
Name | Type | Description |
---|---|---|
_links |
||
base_dn |
string |
Specifies the default base DN for all searches. |
base_scope |
string |
Specifies the default search scope for LDAP queries:
|
bind_as_cifs_server |
boolean |
Specifies whether or not CIFS server's credentials are used to bind to the LDAP server. |
bind_dn |
string |
Specifies the user that binds to the LDAP servers. |
bind_password |
string |
Specifies the bind password for the LDAP servers. |
group_dn |
string |
Specifies the group Distinguished Name (DN) that is used as the starting point in the LDAP directory tree for group lookups. |
group_membership_filter |
string |
Specifies the custom filter used for group membership lookups from an LDAP server. |
group_scope |
string |
Specifies the default search scope for LDAP for group lookups:
|
is_netgroup_byhost_enabled |
boolean |
Specifies whether or not netgroup by host querying is enabled. |
is_owner |
boolean |
Specifies whether or not the SVM owns the LDAP client configuration. |
ldaps_enabled |
boolean |
Specifies whether or not LDAPS is enabled. |
min_bind_level |
string |
The minimum bind authentication level. Possible values are:
|
netgroup_byhost_dn |
string |
Specifies the netgroup Distinguished Name (DN) that is used as the starting point in the LDAP directory tree for netgroup by host lookups. |
netgroup_byhost_scope |
string |
Specifies the default search scope for LDAP for netgroup by host lookups:
|
netgroup_dn |
string |
Specifies the netgroup Distinguished Name (DN) that is used as the starting point in the LDAP directory tree for netgroup lookups. |
netgroup_scope |
string |
Specifies the default search scope for LDAP for netgroup lookups:
|
port |
integer |
The port used to connect to the LDAP Servers. |
query_timeout |
integer |
Specifies the maximum time to wait for a query response from the LDAP server, in seconds. |
schema |
string |
The name of the schema template used by the SVM.
|
servers |
array[string] |
|
session_security |
string |
Specifies the level of security to be used for LDAP communications:
|
skip_config_validation |
boolean |
Indicates whether or not the validation for the specified LDAP configuration is disabled. |
status |
||
try_channel_binding |
boolean |
Specifies whether or not channel binding is attempted in the case of TLS/LDAPS. |
use_start_tls |
boolean |
Specifies whether or not to use Start TLS over LDAP connections. |
user_dn |
string |
Specifies the user Distinguished Name (DN) that is used as the starting point in the LDAP directory tree for user lookups. |
user_scope |
string |
Specifies the default search scope for LDAP for user lookups:
|
_links
Name | Type | Description |
---|---|---|
next |
||
self |
svm
Name | Type | Description |
---|---|---|
_links |
||
name |
string |
The name of the SVM. |
uuid |
string |
The unique identifier of the SVM. |
ldap_service
Name | Type | Description |
---|---|---|
_links |
||
ad_domain |
string |
This parameter specifies the name of the Active Directory domain
used to discover LDAP servers for use by this client.
This is mutually exclusive with |
base_dn |
string |
Specifies the default base DN for all searches. |
base_scope |
string |
Specifies the default search scope for LDAP queries:
|
bind_as_cifs_server |
boolean |
Specifies whether or not CIFS server's credentials are used to bind to the LDAP server. |
bind_dn |
string |
Specifies the user that binds to the LDAP servers. |
bind_password |
string |
Specifies the bind password for the LDAP servers. |
group_dn |
string |
Specifies the group Distinguished Name (DN) that is used as the starting point in the LDAP directory tree for group lookups. |
group_membership_filter |
string |
Specifies the custom filter used for group membership lookups from an LDAP server. |
group_scope |
string |
Specifies the default search scope for LDAP for group lookups:
|
is_netgroup_byhost_enabled |
boolean |
Specifies whether or not netgroup by host querying is enabled. |
is_owner |
boolean |
Specifies whether or not the SVM owns the LDAP client configuration. |
ldaps_enabled |
boolean |
Specifies whether or not LDAPS is enabled. |
min_bind_level |
string |
The minimum bind authentication level. Possible values are:
|
netgroup_byhost_dn |
string |
Specifies the netgroup Distinguished Name (DN) that is used as the starting point in the LDAP directory tree for netgroup by host lookups. |
netgroup_byhost_scope |
string |
Specifies the default search scope for LDAP for netgroup by host lookups:
|
netgroup_dn |
string |
Specifies the netgroup Distinguished Name (DN) that is used as the starting point in the LDAP directory tree for netgroup lookups. |
netgroup_scope |
string |
Specifies the default search scope for LDAP for netgroup lookups:
|
port |
integer |
The port used to connect to the LDAP Servers. |
preferred_ad_servers |
array[string] |
|
query_timeout |
integer |
Specifies the maximum time to wait for a query response from the LDAP server, in seconds. |
referral_enabled |
boolean |
Specifies whether or not LDAP referral is enabled. |
restrict_discovery_to_site |
boolean |
Specifies whether or not LDAP server discovery is restricted to site-scope. |
schema |
string |
The name of the schema template used by the SVM.
|
servers |
array[string] |
|
session_security |
string |
Specifies the level of security to be used for LDAP communications:
|
skip_config_validation |
boolean |
Indicates whether or not the validation for the specified LDAP configuration is disabled. |
status |
||
svm |
||
try_channel_binding |
boolean |
Specifies whether or not channel binding is attempted in the case of TLS/LDAPS. |
use_start_tls |
boolean |
Specifies whether or not to use Start TLS over LDAP connections. |
user_dn |
string |
Specifies the user Distinguished Name (DN) that is used as the starting point in the LDAP directory tree for user lookups. |
user_scope |
string |
Specifies the default search scope for LDAP for user lookups:
|
error_arguments
Name | Type | Description |
---|---|---|
code |
string |
Argument code |
message |
string |
Message argument |
error
Name | Type | Description |
---|---|---|
arguments |
array[error_arguments] |
Message arguments |
code |
string |
Error code |
message |
string |
Error message |
target |
string |
The target parameter that caused the error. |