Junos OS User Access Privileges - TechLibrary - Juniper Networks
Junos OS User Access Privileges - TechLibrary - Juniper Networks
TechLibrary
Search Documenta on
Junos OS allows you to grant the access or permissions to the commands and configura on
hierarchy levels and statements. This enables users to execute only those commands and
configure and view only those statements for which they have access privileges. You can use
extended regular expressions to specify which opera onal mode commands, configura on
statements, and hierarchies are denied or allowed for users. This prevents unauthorized users from
execu ng or configuring sensi ve commands and statements that could poten ally cause damage
to the network. Read this topic for more informa on.
For each login class, you can explicitly deny or allow the use of opera onal and configura on
mode commands that would otherwise be permi ed or not allowed by a privilege level specified in
the permissions statement.
The following sec ons provide addi onal informa on about permissions:
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with-… 1/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
NOTE Each command listed represents that command and all subcommands with
that command as a prefix. Each configura on statement listed represents the top of the
configura on hierarchy to which that flag grants access.
The permissions statement specifies one or more of the permission flags listed in Table 1.
Permission flags are not cumula ve, so for each class you must list all the permission flags needed,
including view to display informa on and configure to enter configura on mode. Two forms of
permissions control for individual parts of the configura on are:
Form that ends in -control—Provides read and write capability for that permission type. An
example is interface-control.
For permission flags that grant access to configura on hierarchy levels and statements, the flags
grant read-only privilege to that configura on. For example, the interface permissions flag
grants read-only access to the [edit interfaces] hierarchy level. The -control form of the
flag grants read-write access to that configura on. Using the preceding example, interface-
control grants read-write access to the [edit interfaces] hierarchy level.
Table 1 lists the Junos OS login class permission flags that you can configure by including the
permissions statement at the [edit system login class class-name] hierarchy level.
The permission flags grant a specific set of access privileges. Each permission flag is listed with the
opera onal mode commands and configura on hierarchy levels and statements for which that flag
grants access.
Permission
Flag Descrip on
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with-… 2/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Permission
Flag Descrip on
access Can view the access configura on in configura on mode and with the show
configuration opera onal mode command.
access- Can view and configure access informa on at the [edit access] hierarchy level.
control
admin Can view user account informa on in configura on mode and with the show
configuration opera onal mode command.
admin- Can view user account informa on and configure it at the [edit system]
control hierarchy level.
all-control Can view user accounts and configure them at the [edit system login]
hierarchy level.
all Can access all opera onal mode commands and configura on mode commands. Can
modify configura on in all the configura on hierarchy levels.
clear Can clear (delete) informa on learned from the network that is stored in various
network databases by using the clear commands.
control Can perform all control-level opera ons—all opera ons configured with the -
control permission flags.
field Can view field debug commands. Reserved for debugging support.
firewall- Can view and configure firewall filter informa on at the [edit firewall]
control hierarchy level.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with-… 3/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Permission
Flag Descrip on
flow-tap- Can view the flow-tap configura on in configura on mode and can configure flow-
control tap configura on informa on at the [edit services flow-tap] hierarchy level.
flow-tap- Can make flow-tap requests to the router or switch. For example, a Dynamic Tasking
opera on Control Protocol (DTCP) client must have flow-tap-operation permission to
authen cate itself to the Junos OS as an administra ve user.
interface Can view the interface configura on in configura on mode and with the show
configuration opera onal mode command.
interface- Can view chassis, class of service (CoS), groups, forwarding op ons, and interfaces
control configura on informa on. Can edit configura on at the following hierarchy levels:
[edit chassis]
[edit class-of-service]
[edit groups]
[edit forwarding-options]
[edit interfaces]
maintenance Can perform system maintenance, including star ng a local shell on the router or
switch and becoming the superuser in the shell by using the su root command, and
can halt and reboot the router or switch by using the request system commands.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with-… 4/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Permission
Flag Descrip on
network Can access the network by using the ping, ssh, telnet, and traceroute
commands.
reset Can restart so ware processes by using the restart command and can configure
whether so ware processes are enabled or disabled at the [edit system
processes] hierarchy level.
rollback Can use the rollback command to return to a previously commi ed configura on
other than the most recently commi ed one.
rou ng Can view general rou ng, rou ng protocol, and rou ng policy configura on
informa on in configura on and opera onal modes.
rou ng- Can view general rou ng, rou ng protocol, and rou ng policy configura on
control informa on and can configure general rou ng at the [edit routing-options]
hierarchy level, rou ng protocols at the [edit protocols] hierarchy level, and
rou ng policy at the [edit policy-options] hierarchy level.
secret Can view passwords and other authen ca on keys in the configura on.
secret- Can view passwords and other authen ca on keys in the configura on and can
control modify them in configura on mode.
security Can view security configura on in configura on mode and with the show
configuration opera onal mode command.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with-… 5/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Permission
Flag Descrip on
security- Can view and configure security informa on at the [edit security] hierarchy
control level.
shell Can start a local shell on the router or switch by using the start shell command.
snmp Can view Simple Network Management Protocol (SNMP) configura on informa on in
configura on and opera onal modes.
snmp-control Can view SNMP configura on informa on and can modify SNMP configura on at
the [edit snmp] hierarchy level.
system Can view system-level informa on in configura on and opera onal modes.
system- Can view system-level configura on informa on and configure it at the [edit
control system] hierarchy level.
trace Can view trace file se ngs and configure trace file proper es.
trace-control Can modify trace file se ngs and configure trace file proper es.
view Can use various commands to display current system-wide, rou ng table, and
protocol-specific values and sta s cs. Cannot view the secret configura on.
view- Can view all of the configura on excluding secrets, system scripts, and event op ons.
configura on
Note: Only users with the maintenance permission can view commit script, op
script, or event script configura on.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with-… 6/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
commands that would otherwise be permi ed or not allowed by a privilege level specified in the
permissions statement.
Permission flags are used to grant a user access to opera onal mode commands and configura on
hierarchy levels and statements. By specifying a specific permission flag on the user's login class at
the [edit system login class] hierarchy level, you grant the user access to the
corresponding commands and configura on hierarchy levels and statements. To grant access to all
commands and configura on statements, use the all permissions flag. For permission flags that
grant access to configura on hierarchy levels and statements, the flags grant read-only privilege to
that configura on. For example, the interface permissions flag grants read-only access to the
[edit interfaces] hierarchy level. The -control form of the flag grants read-write access
to that configura on. Using the preceding example, interface-control grants read-write
access to the [edit interfaces] hierarchy level.
The all login class permission bits take precedence over extended regular expressions when a
user issues rollback command with rollback permission flag enabled.
Expressions used to allow and deny commands for users on RADIUS and TACACS+ servers
have been simplified. Instead of a single, long expression with mul ple commands (allow-
commands=cmd1 cmd2 ... cmdn), you can specify each command as a separate
expression. This new syntax is valid for allow-configuration, deny-configuration,
allow-commands, deny-commands, and all user permission bits.
Users cannot issue the load override command when specifying an extended regular
expression. Users can only issue the merge, replace, and patch configura on commands.
If you allow and deny the same commands, the allow-commands permissions take
precedence over the permissions specified by the deny-commands. For example, if you
include allow-commands "request system software add" and deny-commands
"request system software add", the login class user is allowed to install so ware using
the request system software add command.
Regular expressions for allow-commands and deny-commands can also include the
commit, load, rollback, save, status, and update commands.
If you specify a regular expression for allow-commands and deny-commands with two
different variants of a command, the longest match is always executed.
For example, if you specify a regular expression for allow-commands with the commit-
synchronize command and a regular expression for deny-commands with the commit
command, users assigned to such a login class would be able to issue the commit
synchronize command, but not the commit command. This is because commit-
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with-… 7/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Requirements
Overview
Configura on
Verifica on
Requirements
This example uses the following hardware and so ware components:
Configure at least one user assigned to a login class on the Juniper Networks device. There
can be more than one login class, each with varying permission configura ons, and more than
one user on the device.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with-… 8/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Overview
Each top-level command-line interface (CLI) command and each configura on statement in Junos
OS has an access privilege level associated with it. For each login class, you can explicitly deny or
allow the use of opera onal and configura on mode commands that would otherwise be
permi ed or not allowed by a privilege level. Users can execute only those commands and
configure and view only those statements for which they have access privileges. To configure
access privilege levels, include the permissions statement at the [edit system login
class class-name] hierarchy level.
The access privileges for each login class are defined by one or more permission flags specified in
the permissions statement. Permission flags are used to grant a user access to opera onal
mode commands, statements, and configura on hierarchies. Permission flags are not cumula ve,
so for each login class you must list all the permission flags needed, including view to display
informa on and configure to enter configura on mode. By specifying a specific permission flag
on the user's login class, you grant the user access to the corresponding commands, statements,
and configura on hierarchies. To grant access to all commands and configura on statements, use
the all permissions flag. The permission flags provide read-only (“plain” form) and read and write
(form that ends in -control) capability for a permission type.
NOTE The all login class permission bits take precedence over extended regular
expressions when a user issues a rollback command with the rollback permission flag
enabled.
[edit]
?
the device.
To configure access privilege levels for user permissions, include the permissions statement
at the [edit system login class class-name] hierarchy level, followed by the user
permission, the permissions op on, and the required permission flags.
Configura on
Configuring User Permissions with Access Privilege Levels
Step-by-Step Procedure
To configure access privileges:
1. From the device, view the list of permissions available for the user account. In this example,
the username of the user account is host.
[edit]
user@host> ?
Possible completions:
clear Clear information in the system
configure Manipulate software configuration information
file Perform file operations
help Provide help information
load Load information from file
monitor Show real-time debugging information
mtrace Trace multicast path from source to receiver
op Invoke an operation script
ping Ping remote target
quit Exit the management session
request Make system-level requests
restart Restart software process
save Save information to file
set Set CLI properties, date/time, craft interface message
show Show system information
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 10/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
The output lists the permissions for the user host. Customized login classes can be created by
configuring different access privileges on these user permissions.
2. Configure an access privilege class to enable user host to configure and view SNMP
parameters only. In this example, this login class is called network-management. To customize
the network-management login class, include the SNMP permission flags to the configure
user permission.
Here, the configured permission flags provide both read (snmp) and read-and-write (snmp-
control) capability for SNMP, and this is the only allowed access privilege for the network-
management login class. In other words, all other access privileges other than configuring and
viewing SNMP parameters are denied.
Results
From configura on mode, confirm your configura on by entering the show system login
command. If the output does not display the intended configura on, repeat the instruc ons in this
example to correct the configura on.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 11/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Verifica on
Log in as the username assigned with the new login class, and confirm that the configura on is
working properly.
Ac on
From configura on mode, execute basic SNMP commands at the [edit snmp] hierarchy level.
[edit snmp]
user@host# set name device1
user@host# set description switch1
user@host# set location Lab1
user@host# set contact example.com
user@host# commit
Meaning
The user host assigned to the network-management login class is able to configure SNMP
parameters, as the permission flags specified for this class include both snmp (read capabili es)
and snmp-control (read and write capabili es) permission bits.
Ac on
From the configura on mode, execute any non-SNMP configura on, for example, interfaces
configura on.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 12/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
[edit]
user@host# edit interfaces
Syntax error, expecting <statement> or <identifier>.
The difference between a local and remote authoriza on configura on is the pa ern in which the
regular expressions statements are executed. While it is possible to specify mul ple regular
expressions using strings in the local authoriza on configura on, in a remote configura on, the
regular expressions statements need to be split and specified in individual strings. When the
authoriza on parameters are configured both remotely and locally, the regular expressions
received during TACACS+ or RADIUS authoriza on get merged with any regular expressions
available on the local device.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 13/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
When specifying mul ple regular expressions in a local configura on using the allow-
configuration, deny-configuration, allow-commands, or deny-commands statements,
regular expressions are configured within parentheses and separated using the pipe symbol. The
complete expression is enclosed in double quotes. For example, you can specify mul ple allow-
commands parameters with the following syntax:
allow-commands "(cmd1)|(cmd2)|(cmdn)"
The same expression configured remotely on the authoriza on server uses the following syntax:
allow-commands1 = "cmd1"
allow-commands2 = "cmd2"
allow-commandsn = "cmdn"
When specifying mul ple regular expressions in a local configura on using the allow-
configuration-regexps, deny-configuration-regexps, allow-commands-regexps,
or deny-commands-regexps statements, regular expressions are configured within double
quotes and separated using the space operator. The complete expression is enclosed in square
brackets. For example, you can specify mul ple allow-commands parameters with the following
syntax:
The same expression configured remotely on the authoriza on server uses the following syntax:
allow-commands-regexps1 = "cmd1"
allow-commands-regexps2 = "cmd2"
allow-commands-regexpsn = "cmdn"
Table 2 differen ates the local and remote authoriza on configura on using regular expressions.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 14/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Table 2: Sample Local and Remote Authoriza on Configura on Using Regular Expressions
Local Configura on
login {
class local {
permissions configure;
allow-commands "(ping .*)|(traceroute .*)|(show .*)|(configure .*)|(edit)|(exit)|(commit)|(rollback .*)";
deny-commands .*;
allow-configura on "(interfaces .* unit 0 family ethernet-switching vlan mem.* .*)|(interfaces .* na
deny-configura on .*;
}
}
NOTE
You need to explicitly allow access to the NETCONF mode, either locally or remotely,
by issuing the following three commands: xml-mode, netconf, and need-trailer.
When the deny-configuration = “.*” statement is used, all the other desired
configura ons should be allowed using the allow-configuration statement. This
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 15/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
can affect the allowed regular expressions buffer limit for the allow-
configuration statement. When this limit exceeds, the allowed configura on
might not work. This regular expression buffer size limit has been increased in Junos
OS Release 14.1x53-D40, 15.1, and 16.1.
WARNING When you specify regular expression for commands and configura on
statements, pay close a en on to the following examples, as regular expression with
invalid syntax might not produce the desired results, even if the configura on is
commi ed without any error.
Regular expressions for commands and configura on statements should be specified in the same
manner as execu ng the complete command or statement. Table 3 lists the regular expressions for
configuring access privileges for the [edit interfaces] and [edit vlans] statement
hierarchies, and for the delete interfaces command.
Table 3: Specifying Regular Expressions
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 16/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 17/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Command regular expressions implement the extended (modern) regular expressions, as defined in
POSIX 1003.2.
Table 4: Common Regular Expression Operators
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 18/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
| One of two
or more [edit system login class test]
must be a
With the above configura on, the users assigned to the test login class have
complete
restricted to only the commands specified in the allow-commands statem
standalone
configura on mode, excluding the hierarchy levels specified in the deny-co
expression
enclosed in
parentheses
( ), with no
spaces
between the
pipe and the
adjacent
parentheses.
^ At the
beginning of [edit system login class test]
denote
With the above configura on, the users assigned to the test login class have
where the
viewing interface configura on from the opera onal and configura on mod
command
statement specifies access to commands that begin with show and monito
begins,
where there For the first filter, the commands specified include the show log, show in
might be policer commands. The second filter specifies all commands star ng with
some as monitor interfaces or monitor traffic commands.
ambiguity.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 19/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
$ Character at
the end of a [edit system login class test]
denote a
With the above configura on, the users assigned to the test login class can v
command
configura on in the configura on mode and with the show configurati
that must be
command with the interface user permission. However, the regular expressio
matched
commands statement restricts the users to execute only the show interf
exactly up
access to the command extensions, such as show interfaces detail o
to that
extensive.
point.
[] Range of
le ers or [edit system login class test]
With the above configura on, the users assigned to the test login class have
permissions, and have access to configure interfaces within the specified ran
number (0 through 9).
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 20/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
() A group of
commands, [edit system login class test]
expression
With the above configura on, users assigned to the test login class have sup
to be
have access to the commands specified in the allow-commands statement
evaluated.
The result is
then
evaluated as
part of the
overall
expression.
Parentheses
must be
used in
conjunc on
with pipe
operators,
as
explained.
* Zero or
more terms. [edit system login class test]
user@host# set permissions configure
user@host# set deny-configura on "(system login class m*)"
With the above configura on, users assigned to the test login class whose lo
are denied configura on access.
+ One or more
terms. [edit system login class test]
user@host# set permissions configure
user@host# set deny-configura on "(system login class m+)"
With the above configura on, users assigned to the test login class whose lo
are denied configura on access.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 21/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
. Any
character [edit system login class test]
space " ". user@host# set deny-configura on "(system login class m.)"
With the above configura on, users assigned to the test login class whose lo
are denied configura on access.
.* Everything
from the [edit system login class test]
onward.
With the above configura on, users assigned to the test login class whose lo
are denied configura on access.
Note:
NOTE Table 5 does not provide a comprehensive list of all regular expressions and
keywords for all configura on statements and hierarchies. The regular expressions listed
in the table are supported in Junos OS Release 16.1, and are validated only for the [edit
system ntp server] and [edit protocols rip] statement hierarchies.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 22/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Statement
Hierarchy Regular Expressions
[edit
system
ntp
server]
key key-
number [edit system login class test]
set permissions configure
set allow-configura on-regexps [ "system ntp server .*" "system ntp server .* key .*" ]
set deny-configura on-regexps [ "system ntp server .* version .*" "system ntp server .* pr
version
version- [edit system login class test]
prefer
[edit system login class test]
set permissions configure
set allow-configura on-regexps [ "system ntp server .*" "system ntp server .* prefer" ];
set deny-configura on-regexps [ "system ntp server .* key .*" "system ntp server .* versio
[edit
protocols
rip]
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 23/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Statement
Hierarchy Regular Expressions
message-
size [edit system login class test]
metric-in
metric-in [edit system login class test]
set permissions configure
set allow-configura on-regexps "protocols rip metric-in .*"
set deny-configura on-regexps [ "protocols rip message-size .*" "protocols rip route- me
route-
meout [edit system login class test]
update-
interval [edit system login class test]
permission flags
The permission flags define the larger boundaries of what a person or login class can access and
control. The allow-configuration and deny-configuration statements take precedence
over permission flags and give the administrator finer control over exactly what the user has
access to.
This topic explains defining access privileges using allow-configuration and deny-
configuration statements by showing a series of examples of login class configura on using
these statements. Examples 1 through 3 use both permission flags and deny-configuration
statements to create login classes that allow users access to all except something. Each allow-
configuration or deny-configuration statement is configured with one or more regular
expressions to be allowed or denied.
Example 1
To create a login class that allows the user to configure everything except telnet parameters:
Example 2
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 25/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
To create a login class that allows the user to configure everything except anything within any
login class whose name begins with “m”:
Example 3
This next example shows the crea on of a login class with the all permission bit that prevents
the user from edi ng a configura on or issuing commands (such as commit) at the [edit
system login class] or [edit system services] hierarchy levels:
To create a login class that allows the user to configure everything except at the [edit system
login class] or [edit system services] hierarchy levels:
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 26/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
The next two examples show how to use the allow-configuration and deny-
configuration statements to determine permissions inverse to each other for the [edit
system services] hierarchy level.
Example 4
To create a login class that allows the user to have full configura on privileges at the [edit
system services] hierarchy level and at only the [edit system services] hierarchy
level:
Example 5
To create a login class that allows the user full permissions for all configura on mode hierarchies
except the [edit system services] hierarchy level:
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 27/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Requirements
Overview
Configura on
Examples
Requirements
This example uses the following hardware and so ware components:
There can be more than one login class, each with varying permission configura ons, and
more than one user on the device.
Overview
To control who can make configura on changes to the system, and what specifically they can
change, you can create regular expressions that indicate specific por ons of the configura on
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 28/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
hierarchy that users in a named user class are permi ed to access. For example, you can create
regular expressions that specify a group of rou ng instances that users are allowed to modify, and
prevent the users from making changes to any other rou ng instances, or to any other
configura on level.
You can op onally change this default behavior so addi ve logic (that is, deny all by default / allow
some as specified) is used in regular expressions. When addi ve logic is enabled, the behavior of
exis ng regular expressions changes so that all configura on hierarchies are denied unless they
are included in an allow-configuration-regexps statement for the named user class.
Configura on
To enable addi ve logic for regular expressions:
1. To explicitly allow one or more individual configura on mode hierarchies, include the allow-
configuration-regexps statement at the [edit system login class class-
name] hierarchy level, configured with the regular expressions to be allowed.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 29/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
[edit system]
user@host# set regex-additive-logic
Examples
Using Regular Expressions with Addi ve Logic
Purpose
This sec on provides examples of regular expressions that use addi ve logic to give you ideas for
crea ng configura ons appropriate for your system.
The following example login class includes a regular expression that allows configura on of rou ng
instances whose names start with CUST-VRF-; for example, CUST-VRF-1, CUST-VRF-25,
CUST-VRF-100, and so on:
If the following statement is included in the configura on, it prevents the user from configuring
any other rou ng instances and denies access to any non-rou ng instance configura on hierarchy:
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 30/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
[edit system]
user@host# set regex-additive-logic
The following example login class includes a regular expression that allows configura on of BGP
peers:
If the following statement is included in the configura on, it prevents the user from making any
other changes, such as dele ng or disabling BGP statements:
[edit system]
user@host# set regex-additive-logic
Verifica on
Any allowed or denied expressions should take precedence over any permissions granted
with the permissions statement.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 31/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Requirements
Configura on
Verifica on
Requirements
This example uses the following hardware and so ware components:
Establish a TCP connec on between the device and the TACACS+ server. In the case of the
RADIUS server, establish a UDP connec on between the device and the RADIUS server.
For informa on on configuring a TACACS+ server, see Configuring TACACS+ Authen ca on.
Configure at least one user assigned to a login class on the Juniper Networks device. There
can be more than one login class, each with varying permission configura ons, and more than
one user on the device.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 32/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
access privilege levels, include the permissions statement at the [edit system login
class class-name] hierarchy level.
The access privileges for each login class are defined by one or more permission flags specified in
the permissions statement. In addi on to this, you can specify extended regular expressions
with the following statements:
The above statements define a user’s access privileges to individual opera onal mode commands,
configura on statements, and hierarchies. These statements take precedence over the login class
permissions set for a user.
Configura on Notes
You can include the allow/deny statement only once in each login class.
If the exact same command is configured under both allow-commands and deny-
commands statements, or both allow-configuration and deny-configuration
statements, then the allow opera on takes precedence over the deny statement.
For instance, with the following configura on, a user assigned to login class test is allowed to
install so ware using the request system software add command, although the deny-
commands statement also includes it:
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 33/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
For instance, with the following configura on, a user assigned to login class test is allowed to
access the [edit system services] configura on hierarchy, although the deny-
configuration statement also includes it:
Regular expressions for allow-commands and deny-commands statements can also include
the commit, load, rollback, save, status, and update commands.
Explicitly allowing configura on mode hierarchies or regular expressions using the allow-
configuration statement adds to the regular permissions set using the permissions
statement. Likewise, explicitly denying configura on mode hierarchies or regular expressions
using the deny-configuration statement removes permissions for the specified
configura on mode hierarchy, from the default permissions provided by the permissions
statement.
For example, for the following configura on, the login class user can edit the configura on at
the [edit system services] hierarchy level and issue configura on mode commands
(such as commit), in addi on to just entering the configura on mode using the configure
command, which is the permission specified by the configure permission flag:
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 34/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Likewise, for the following configura on, the login class user can perform all opera ons
allowed by the all permissions flag, except issuing configura on mode commands (such as
commit) or modifying the configura on at the [edit system services] hierarchy level:
To define access privileges to parts of the configura on hierarchy, specify the full paths in the
extended regular expressions with the allow-configuration and deny-configuration
statements. Use parentheses around an extended regular expression that connects two or
more expressions with the pipe (|) symbol.
For example:
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 35/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
If the regular expression contains any spaces, operators, or wildcard characters, enclose the
expression in quota on marks. Regular expressions are not case-sensi ve; for example,
allow-commands "show interfaces".
Modifiers such as set, log, and count are not supported within the regular expression string to
be matched. If a modifier is used, then nothing is matched.
Anchors are required when specifying complex regular expressions with the allow-
commands statement.
For example:
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 36/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
use spaces between regular expressions separated with parentheses and connected with the
pipe (|) symbol.
For example:
You can use the * wildcard character when deno ng regular expressions. However, it must be
used as a por on of a regular expression. You cannot use [ * ] or [ .* ] alone.
You can configure as many regular expressions as needed to be allowed or denied. Regular
expressions to be denied take precedence over configura ons to be allowed.
Topology
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 37/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Figure 1 illustrates a simple topology, where Router R1 is a Juniper Networks device and has a
TCP connec on established with a TACACS+ server.
In this example, R1 is configured with three customized login classes—Class1, Class2, and Class3—
for specifying access privileges with extended regular expressions using the allow-commands
and deny-commands statements differently.
Class1—Defines access privileges for the user with the allow-commands statement only.
This login class provides operator-level user permissions, and should provide authoriza on for
only reboo ng the device.
Class2—Defines access privileges for the user with the deny-commands statement only. This
login class provides operator-level user permissions, and should deny access to set
commands.
Class3—Defines access privileges for the user with both the allow-commands and deny-
commands statements. This login class provides superuser-level user permissions, and should
provide authoriza on for accessing interfaces and viewing device informa on. It should also
deny access to edit and configure commands.
Router R1 has three different users, User1, User2, and User3, assigned to Class1, Class2, and
Class3 login classes, respec vely.
Configura on
CLI Quick Configura on
To quickly configure this example, copy the following commands, paste them into a text file,
remove any line breaks, change any details necessary to match your network configura on, copy
and paste the commands into the CLI at the [edit] hierarchy level, and then enter commit from
configura on mode.
R1
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 38/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
1. Configure the order in which authen ca on should take place for R1. In this example,
TACACS+ server authen ca on is first, followed by RADIUS server authen ca on, and then
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 39/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
[edit system]
user@R1# set authentication-order tacplus
user@R1# set authentication-order radius
user@R1# set authentication-order password
[edit system]
user@R1# set tacplus-server 10.209.1.66
user@R1# set tacplus-options enhanced-accounting
user@R1# set accounting destination tacplus server 10.209.1.66
[edit system]
user@R1# set radius-server 10.209.1.66 secret "$ABC123"
user@R1# set radius-options enhanced-accounting
[edit system]
user@R1# set accounting events login
user@R1# set accounting events change-log
user@R1# set accounting events interactive-commands
user@R1# set accounting traceoptions file auditlog
user@R1# set accounting traceoptions flag all
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 40/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
1. Configure Class1 custom login class and assign operator-level user permissions. For
informa on on the predefined system login classes, see the Junos OS Login Classes Overview.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 41/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
1. Configure the Class2 custom login class and assign operator-level user permissions. For
informa on on the predefined system login classes, see the Junos OS Login Classes Overview.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 42/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
1. Configure the Class3 custom login class and assign superuser-level user permissions. For
informa on on the predefined system login classes, see the Junos OS Login Classes Overview.
Results
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 43/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
From configura on mode, confirm your configura on by entering the show system command. If
the output does not display the intended configura on, repeat the instruc ons in this example to
correct the configura on.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 44/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
permissions all;
allow-commands configure;
deny-commands .*;
}
user User1 {
uid 2001;
class Class1;
authentication {
encrypted-password "$ABC123";
}
}
user User2 {
uid 2002;
class Class2;
authentication {
encrypted-password "$ABC123";
}
}
user User3 {
uid 2003;
class Class3;
authentication {
encrypted-password “$ABC123”;
}
}
}
syslog {
file messages {
any any;
}
}
Verifica on
Log in as the username assigned with the new login class, and confirm that the configura on is
working properly.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 45/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Purpose
Verify that the permissions and commands allowed in the Class1 login class are working.
Ac on
From opera onal mode, run the show system users command.
From opera onal mode, run the request system reboot command.
Possible completions:
reboot Reboot the system
Meaning
The Class1 login class to which User1 is assigned has the operator-level user permissions, and is
allowed to execute the request system reboot command.
The predefined operator login class has the following permission flags specified:
clear—Can clear (delete) informa on learned from the network that is stored in various
network databases by using the clear commands.
network—Can access the network by using the ping, ssh, telnet, and traceroute
commands.
reset—Can restart so ware processes by using the restart command and can configure
whether so ware processes are enabled or disabled at the [edit system processes]
hierarchy level.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 46/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
trace—Can view trace file se ngs and configure trace file proper es.
view—Can use various commands to display current system-wide, rou ng table, and protocol-
specific values and sta s cs. Cannot view the secret configura on.
For the Class1 login class, in addi on to the above-men oned user permissions, User1 can
execute the request system reboot command. The first output displays the view permissions
as an operator, and the second output shows that the only request command that User1 can
execute as an operator is the request system reboot command.
Ac on
ping 10.209.1.66
PING 10.209.1.66 (10.209.1.66): 56 data bytes
64 bytes from 10.209.1.66: icmp_seq=0 ttl=52 time=212.521 ms
64 bytes from 10.209.1.66: icmp_seq=1 ttl=52 time=212.844 ms
64 bytes from 10.209.1.66: icmp_seq=2 ttl=52 time=211.304 ms
64 bytes from 10.209.1.66: icmp_seq=3 ttl=52 time=210.963 ms
^C
--- 10.209.1.66 ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max/stddev = 210.963/211.908/212.844/0.792 ms
User2@R1> ?
Possible completions:
clear Clear information in the system
file Perform file operations
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 47/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
User2@R1> set
^
unknown command.
Meaning
The Class2 login class to which User2 is assigned has the operator-level user permissions, and is
denied access to all set commands. This is displayed in the command outputs.
The permission flags specified for the predefined operator login class are the same as that of
Class1.
Ac on
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 48/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
User3@R1> ?
Possible completions:
configure Manipulate software configuration information
User3@R1> configure
[edit]
User3@R1#
Meaning
The Class3 login class to which User3 is assigned has the superuser (all) user permissions, but is
allowed to execute the configure command only, and is denied access to all other opera onal
mode commands. Because the regular expressions specified in the allow/deny-commands
statements take precedence over the user permissions, User3 on R1 has access only to
configura on mode, and is denied access to all other opera onal mode commands.
Requirements
Configura on
Verifica on
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 49/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Requirements
This example uses the following hardware and so ware components:
Establish a TCP connec on between the device and the TACACS+ server. In the case of the
RADIUS server, establish a UDP connec on between the device and the RADIUS server.
For informa on on configuring a TACACS+ server, see Configuring TACACS+ Authen ca on.
Configure at least one user assigned to a login class on the Juniper Networks device. There
can be more than one login class, each with varying permission configura ons, and more than
one user on the device.
The access privileges for each login class are defined by one or more permission flags specified in
the permissions statement. In addi on to this, you can specify extended regular expressions
with the following statements:
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 50/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
The above statements define a user’s access privileges to individual opera onal mode commands,
configura on statements, and hierarchies. These statements take precedence over a login class
permissions bit set for a user.
For example:
[edit system]
login {
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 51/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
class test {
permissions configure;
allow-configuration-regexps .*options;
}
}
[edit system]
login {
class test {
permissions configure;
allow-configuration-regexps ".* .* .*ssh";
}
}
In the above example, the three tokens include .*, .*, and .*ssh, respec vely.
The above configura on matches the following statements:
system host-name hostname-ssh
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 52/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
You can restrict configura on access easily using the deny-configuration statement as
compared to using the deny-configuration-regexps statement. Table 6 illustrates the use of
both the deny-configuration and deny-configuration-regexps statements in different
configura ons to achieve the same result of restric ng access to a par cular configura on.
Table 6: Restric ng Configura on Access Using deny-configur on and deny-configura on-regexps
Statements
xnm-ssl
[edit system] [edit system]
login { login {
class test { class test {
permissions configure; permissions configure;
allow-configura on .*; allow-configura on .*;
deny-configura on .*xnm-ssl; deny-configura on-regexps ".* .* .*-ssl"";
} }
} }
ssh
[edit system] [edit system]
login { login {
class test { class test {
permissions configure; permissions configure;
allow-configura on .*; allow-configura on .*;
deny-configura on ".*ssh"; deny-configura on-regexps ".*ssh";
} deny-configura on-regexps ".* .*ssh";
} deny-configura on-regexps ".* .* .*ssh";
}
}
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 53/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Configura on Notes
Explicitly allowing configura on mode hierarchies or regular expressions using the allow-
configuration statement adds to the regular permissions set using the permissions
statement. Likewise, explicitly denying configura on mode hierarchies or regular expressions
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 54/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Likewise, for the following configura on, the login class user can perform all opera ons
allowed by the all permissions flag, except issuing configura on mode commands (such as
commit) or modifying the configura on at the [edit system services] hierarchy level:
To define access privileges to parts of the configura on hierarchy, specify the full paths in the
extended regular expressions with the allow-configuration and deny-configuration
statements. Use parentheses around an extended regular expression that connects two or
more expressions with the pipe (|) symbol.
For example:
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 55/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
If the exact same command is configured under both allow-configuration and deny-
configuration statements, then the allow opera on takes precedence over the deny
statement.
For instance, with the following configura on, a user assigned to login class test is allowed to
access the [edit system services] configura on hierarchy, although the deny-
configuration statement also includes it:
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 56/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
For instance, if a certain command or configura on is allowed, for example, using permission
all, then we can use the deny-configuration command to deny access to a par cular
hierarchy.
Modifiers such as set, log, and count are not supported within the regular expression string to
be matched. If a modifier is used, then nothing is matched.
You can use the * wildcard character when deno ng regular expressions. However, it must be
used as a por on of a regular expression. You cannot use [ * ] or [ .* ] alone.
You can configure as many regular expressions as needed to be allowed or denied. Regular
expressions to be denied take precedence over configura ons to be allowed.
Topology
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 57/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Figure 2 illustrates a simple topology, where Router R1 is a Juniper Networks device and has a
TCP connec on established with a TACACS+ server.
In this example, R1 is configured with two customized login classes—Class1 and Class2—for
specifying access privileges with extended regular expressions using the allow-
configuration, deny-configuration, allow-configuration-regexps, and deny-
configuration-regexps statements differently.
Class1—Define access privileges for the user with the allow-configuration and deny-
configuration statements. This login class should provide access to configure interfaces
hierarchy only, and deny all other access on the device. To do this, the user permissions should
include configure to provide configura on access. In addi on to this, the allow-
configuration statement should allow interfaces configura on, and the deny-
configuration statement should deny access to all other configura ons. Because the allow
statement takes precedence over the deny statement, the users assigned to the Class1 login
class can access only the [edit interfaces] hierarchy level.
Router R1 has two users, User1 and User2, assigned to the Class1 and Class2 login classes,
respec vely.
Configura on
CLI Quick Configura on
To quickly configure this example, copy the following commands, paste them into a text file,
remove any line breaks, change any details necessary to match your network configura on, copy
and paste the commands into the CLI at the [edit] hierarchy level, and then enter commit from
configura on mode.
R1
1. Configure the order in which authen ca on should take place for R1. In this example,
TACACS+ server authen ca on is first, followed by RADIUS server authen ca on, then the
local password.
[edit system]
user@R1# set authentication-order tacplus
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 59/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
[edit system]
user@R1# set tacplus-server 10.209.1.66
user@R1# set tacplus-options enhanced-accounting
user@R1# set accounting destination tacplus server 10.209.1.66
[edit system]
user@R1# set radius-server 10.209.1.66 secret "$ABC123"
user@R1# set radius-options enhanced-accounting
[edit system]
user@R1# set accounting events login
user@R1# set accounting events change-log
user@R1# set accounting events interactive-commands
user@R1# set accounting traceoptions file auditlog
user@R1# set accounting traceoptions flag all
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 60/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
1. Configure the Class1 custom login class and assign configura on user permissions.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 61/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
1. Configure the Class2 custom login class and assign superuser (all) user permissions. For
informa on on the predefined system login classes, see Junos OS Login Classes Overview.
2. Specify the regular expression to allow access to mul ple hierarchies under the [edit
interfaces] hierarchy level.
3. Specify the regular expression to deny configura on at the [edit system] and [edit
protocols] hierarchy levels.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 62/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Results
From configura on mode, confirm your configura on by entering the show system command. If
the output does not display the intended configura on, repeat the instruc ons in this example to
correct the configura on.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 63/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
}
}
login {
class Class1 {
permissions configure;
allow-configuration "interfaces .* unit .*";
deny-configuration .*;
}
class Class2 {
permissions all;
allow-configuration-regexps [ "interfaces .* description .*" "interfaces .*
deny-configuration-regexps [ "system" "protocols" ];
}
user User1 {
uid 2001;
class Class1;
authentication {
encrypted-password "$ABC123";
}
}
user User2 {
uid 2002;
class Class2;
authentication {
encrypted-password "$ABC123";
}
}
}
syslog {
file messages {
any any;
}
}
Verifica on
Log in as the username assigned with the new login class, and confirm that the configura on is
working properly.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 64/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Ac on
User1@R1> ?
Possible completions:
clear Clear information in the system
configure Manipulate software configuration information
file Perform file operations
help Provide help information
load Load information from file
op Invoke an operation script
quit Exit the management session
request Make system-level requests
save Save information to file
set Set CLI properties, date/time, craft interface message
start Start shell
test Perform diagnostic debugging
User1@R1# edit ?
Possible completions:
> interfaces Interface configuration
Meaning
User1 has configure user permissions seen in the first output, and the only configura on access
allowed for User1 is at the interfaces hierarchy level. All other configura on is denied, as seen in
the second output.
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 65/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Ac on
From the configura on mode, access the interfaces configura on.
[edit interfaces]
User2@R1# set ?
Possible completions:
<interface-name> Interface name
+ apply-groups Groups from which to inherit configuration data
+ apply-groups-except Don't inherit configuration data from these groups
ge-0/0/3 Interface name
> interface-range Interface ranges configuration
> interface-set Logical interface set configuration
> traceoptions Interface trace options
From the configura on mode, access the system and protocols configura on hierarchies.
Meaning
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 66/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
User2 has permissions to configure interfaces of R1, but the [edit system] and [edit
protocols] hierarchy levels are denied access, as seen in the output.
See also
Regular Expressions for Allowing and Denying Junos OS Opera onal Mode Commands,
Configura on Statements, and Hierarchies
Related Documenta on
Junos OS Login Classes Overview
Company
About Us
Careers
Corporate Responsibility
Newsroom
Events
Contact Us
Image Library
Partners
Partner Program
Find a Partner
Become a Partner
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 67/68
6/12/2019 Junos OS User Access Privileges - TechLibrary - Juniper Networks
Partner Login
Sign up
Follow us
Contacts
Feedback
Site Map
Privacy Policy
Legal No ces
https://www.juniper.net/documentation/en_US/junos/topics/topic-map/junos-os-access-privileges.html#id-example-configuring-user-permissions-with… 68/68