Configuring the Shell Type for Login

This section contains payload examples and corresponding CLIs to demonstrate how to use the NX-API REST API to configure the shell type for login.

For more information, see the Cisco Nexus 9000 Series NX-OS Programmability Guide:

https://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-installation-and-configuration-guides-list.html/

Specifying Bash Shell for Particular User Login

Specifying Bash Shell for Particular User Login
POST http://<mgmt0_IP>/api/mo/sys/userext.json
{
  "aaaUserEp": {
    "children": [
      {
        "aaaUser": {
          "attributes": {
            "allowExpired": "no",
            "expiration": "never",
            "name": "SampleString_123",
            "shelltype": "shellbash"
}}}]}}
{
    imdata:[]
}
<System>
  <userext-items>
    <user-items>
      <User-list>
        <name>SampleString_123</name>
        <allowExpired>no</allowExpired>
        <expiration>never</expiration>
        <shelltype>shellbash</shelltype>
      </User-list>
    </user-items>
  </userext-items>
</System>

Note: This example was added in Release 9.3(3).


CLI Commands

The CLI commands are equivalent to the payload examples displayed in the pane on the right. Click the DME tab in the top-left corner of the right pane to view the JSON payload. Click the YANG tab to view the XML payload.

username SampleString_123 shelltype bash


Verifying a DME Configuration

The following table contains the distinguished name (DN) for each managed object (MO) in the DME payload. Issue a GET request using the DN to verify the configuration was posted or to get information about the configured properties of a particular object.

MODN
aaaUserEp sys/userext
aaaUser sys/userext/user-[SampleString_123]


aaaUser Properties

The following table contains information about the aaaUser properties in the DME payload. For more information about the properties and MOs, see the NX-API DME Model Reference linked in the Related Documentation section below.

Property NameData TypeDescriptionValues
allowExpiredaaa:Boolean
(scalar:Enum8)
Allow expired user to be configuredSELECTION:
0 - no
1 - yes
DEFAULT: no
expirationaaa:Date
(scalar:Date)
Account Expiration DateDATE FORMAT: %Y-%m-%dT%H:%M:%S.%f%z
DEFAULT: never
namepol:ObjName
(naming:Name256)
Object name
MAX SIZE: 64
shelltypeaaa:loginShellType
(scalar:Enum8)
User Shelltype AccessSELECTION:
1 - shellvsh
2 - shellbash
DEFAULT: shellvsh


Related Documentation

For other CLI options, see the Cisco Nexus 9000 Series NX-OS Command Reference:

http://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-command-reference-list.html

See the NX-API DME Model Reference for detailed information about classes and attributes described in the payload:

https://developer.cisco.com/site/nx-os/docs/nexus-model-reference/

For information about using the payloads, see the Cisco Nexus 9000 Series NX-OS Programmability Guide:

https://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-programming-reference-guides-list.html

Specifying VSH Shell for Login

Specifying VSH Shell for Login
POST http://<mgmt0_IP>/api/mo/sys/userext.json
{
  "aaaUserEp": {
    "children": [
      {
        "aaaUser": {
          "attributes": {
            "allowExpired": "no",
            "expiration": "never",
            "name": "SampleString_123",
            "shelltype": "shellvsh"
}}}]}}
{
    imdata:[]
}
<System>
  <userext-items>
    <user-items>
      <User-list>
        <name>SampleString_123</name>
        <allowExpired>no</allowExpired>
        <expiration>never</expiration>
        <shelltype>shellvsh</shelltype>
      </User-list>
    </user-items>
  </userext-items>
</System>

Note: This example was added in Release 9.3(3).


CLI Commands

The CLI commands are equivalent to the payload examples displayed in the pane on the right. Click the DME tab in the top-left corner of the right pane to view the JSON payload. Click the YANG tab to view the XML payload.

username SampleString_123 shelltype vsh


Verifying a DME Configuration

The following table contains the distinguished name (DN) for each managed object (MO) in the DME payload. Issue a GET request using the DN to verify the configuration was posted or to get information about the configured properties of a particular object.

MODN
aaaUserEp sys/userext
aaaUser sys/userext/user-[SampleString_123]


aaaUser Properties

The following table contains information about the aaaUser properties in the DME payload. For more information about the properties and MOs, see the NX-API DME Model Reference linked in the Related Documentation section below.

Property NameData TypeDescriptionValues
allowExpiredaaa:Boolean
(scalar:Enum8)
Allow expired user to be configuredSELECTION:
0 - no
1 - yes
DEFAULT: no
expirationaaa:Date
(scalar:Date)
Account Expiration DateDATE FORMAT: %Y-%m-%dT%H:%M:%S.%f%z
DEFAULT: never
namepol:ObjName
(naming:Name256)
Object name
MAX SIZE: 64
shelltypeaaa:loginShellType
(scalar:Enum8)
User Shelltype AccessSELECTION:
1 - shellvsh
2 - shellbash
DEFAULT: shellvsh


Related Documentation

For other CLI options, see the Cisco Nexus 9000 Series NX-OS Command Reference:

http://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-command-reference-list.html

See the NX-API DME Model Reference for detailed information about classes and attributes described in the payload:

https://developer.cisco.com/site/nx-os/docs/nexus-model-reference/

For information about using the payloads, see the Cisco Nexus 9000 Series NX-OS Programmability Guide:

https://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-programming-reference-guides-list.html