type=page
status=published
title=list-secure-admin-internal-users
next=list-secure-admin-principals.html
prev=list-resource-refs.html
~~~~~~
list-secure-admin-internal-users
================================

[[list-secure-admin-internal-users-1]][[GSRFM00199]][[list-secure-admin-internal-users]]

list-secure-admin-internal-users
--------------------------------

lists the user names that the \{product---name} DAS and instances use to
authenticate with each other and to authorize admin operations.

[[sthref1787]]

Synopsis

[source,oac_no_warn]
----
asadmin [asadmin-options] list-secure-admin-internal-users [--help]  
[--long={false|true}]
[--output output]
[--header={false|true}]
[name]
----

[[sthref1788]]

Description

The `list-secure-admin-internal-users` subcommand lists the user names
that the \{product---name} DAS and instances use to authenticate with
each other and to authorize admin operations.

[[sthref1789]]

Options

asadmin-options::
  Options for the `asadmin` utility. For information about these
  options, see the link:asadmin.html#asadmin-1m[`asadmin`(1M)] help page.
`--help`::
`-?`::
  Displays the help text for the subcommand.
`--long`::
`-l`::
  Displays detailed information about each internal user. The default
  value is `false.`
`--output`::
`-o`::
  Displays specific details about each internal user. Use a
  comma-separated list to specify the details you want to display and
  their order. The values are case-insensitive. +
  Possible values are as follows: +
  `username`;;
    Displays the user name for the internal user.
  `password-alias`;;
    Displays the password alias for the internal user.
`--header`::
`-h`::
  Specifies whether column headings are displayed when the `--long`
  option is used. The default value is `true`. To suppress the headings,
  set the `--header` option to `false`.

[[sthref1790]]

Operands

name::
  The user name for the internal user for which you want to display
  details.

[[sthref1791]]

Examples

[[GSRFM709]][[sthref1792]]

Example 1   Listing the User Name for Secure Admin

This example lists the user names that the \{product---name} DAS and
instances use to authenticate with each other and to authorize admin
operations.

[source,oac_no_warn]
----
asadmin> list-secure-admin-internal-users

Command list-secure-admin-internal-users executed successfully.
----

[[sthref1793]]

Exit Status

0::
  subcommand executed successfully
1::
  error in executing the subcommand

[[sthref1794]]

See Also

link:asadmin.html#asadmin-1m[`asadmin`(1M)]

link:enable-secure-admin.html#enable-secure-admin-1[`enable-secure-admin`(1)],
link:enable-secure-admin-internal-user.html#enable-secure-admin-internal-user-1[`enable-secure-admin-internal-user`(1)]


