Nesta página
Exemplo: Configure permissões de usuários com níveis de privilégio de acesso
Como definir privilégios de acesso com declarações de configuração de permissão e de negação
Exemplo: Use lógica aditiva com expressões regulares para especificar privilégios de acesso
Exemplo: Configure permissões de usuário com privilégios de acesso para comandos de modo operacional
Privilégios de acesso ao usuário
Você (o administrador do sistema) concede aos usuários acesso ou permissões para comandos e níveis e declarações da hierarquia de configuração. Os usuários só podem executar esses comandos e visualizar e configurar apenas aquelas declarações para as quais eles têm privilégios de acesso. Você também pode usar expressões regulares estendidas para especificar quais comandos de modo operacional, declarações de configuração e hierarquias são permitidos ou negados para os usuários. Essa prática impede que usuários não autorizados executem comandos sensíveis ou configurem declarações que possam causar danos à rede.
Visão geral dos níveis de privilégio de acesso
Cada declaração de comando e configuração de CLI de alto nível tem um nível de privilégio de acesso associado. Os usuários só podem executar esses comandos e configurar e visualizar apenas aquelas declarações para as quais eles têm privilégios de acesso. Uma ou mais bandeiras de permissão definem os privilégios de acesso para cada aula de login.
Para cada aula de login, você também pode permitir ou negar explicitamente o uso de comandos de modo operacional e de configuração e hierarquias de declaração que de outra forma seriam permitidas ou negadas por um nível de privilégio especificado na declaração.permissions
- Bandeiras de permissão de classe de login
- Permitir e negar comandos individuais e hierarquias de declaração para aulas de login
Bandeiras de permissão de classe de login
Você usa bandeiras de permissão para conceder a um usuário acesso a comandos de modo operacional e níveis e declarações da hierarquia de configuração. Você configura bandeiras de permissão para a classe de login do usuário no nível de hierarquia.[edit system login class]
Quando você especifica uma determinada bandeira de permissão, o usuário ganha acesso aos comandos e aos níveis de hierarquia de configuração e declarações que correspondem a essa bandeira. Para conceder acesso a todos os comandos e declarações de configuração, use a bandeira de permissões.all
Cada comando listado representa esse comando e todos os subcomandados com esse comando como prefixo. Cada declaração de configuração listada representa o topo da hierarquia de configuração à qual essa bandeira concede acesso.
A declaração especifica uma ou mais das bandeiras de permissão listadas em .permissions
Tabela 1 As bandeiras de permissão não são cumulativas. Para cada classe, você deve listar todas as bandeiras de permissão necessárias, inclusive para exibir informações e entrar no modo de configuração.view
configure
Duas formas de permissões controlam o acesso de um usuário às partes individuais da configuração:
-
Formulário "simples" — fornece recursos somente de leitura para esse tipo de permissão. Um exemplo é .
interface
-
-control
formulário — fornece recursos de leitura e gravação para esse tipo de permissão. Um exemplo é .interface-control
Para bandeiras de permissão que concedem acesso a níveis e declarações de hierarquia de configuração, as bandeiras de forma simples concedem privilégio somente de leitura a essa configuração. Por exemplo, a bandeira de permissão concede acesso somente de leitura ao nível de hierarquia.interface
[edit interfaces]
A forma da bandeira concede acesso read-write a essa configuração.-control
Por exemplo, a bandeira concede acesso de leitura e gravação ao nível de hierarquia.interface-control
[edit interfaces]
lista as bandeiras de permissão de classe de login que você pode configurar, incluindo a declaração no nível de hierarquia.Tabela 1permissions
[edit system login class class-name]
As bandeiras de permissão concedem um conjunto específico de privilégios de acesso. Cada bandeira de permissão é listada com os comandos de modo operacional ou de configuração e níveis de hierarquia de configuração e declarações para as quais essa bandeira concede acesso.
Bandeira de permissão |
Descrição |
---|---|
Pode visualizar a configuração de acesso no modo operacional ou modo de configuração. |
|
Pode visualizar e configurar informações de acesso no nível de hierarquia. |
|
Pode visualizar as informações da conta do usuário no modo operacional ou modo de configuração. |
|
Pode visualizar as informações da conta do usuário e configurá-la no nível de hierarquia. |
|
Pode acessar todos os comandos de modo operacional e comandos de modo de configuração. Pode modificar a configuração em todos os níveis de hierarquia de configuração. |
|
Pode limpar (deletar) informações que o dispositivo aprende com a rede e armazena em vários bancos de dados de rede (usando os comandos). |
|
Pode entrar no modo de configuração (usando o comando) e confirmar configurações (usando o comando). |
|
Pode realizar todas as operações de nível de controle — todas as operações configuradas com as bandeiras de permissão. |
|
Pode visualizar comandos de depuração de campo. Reservado para suporte de depuração. |
|
Pode visualizar a configuração do filtro de firewall no modo operacional ou modo de configuração. |
|
Pode visualizar e configurar informações de filtro de firewall no nível de hierarquia. |
|
Pode ler e escrever para a mídia removível. |
|
Pode visualizar a configuração da torneira de fluxo no modo operacional ou modo de configuração. |
|
Pode visualizar e configurar informações de fluxo-tap no nível de hierarquia. |
|
Pode fazer solicitações de flow-tap para o roteador ou switch. Por exemplo, um cliente do Dynamic Tasking Control Protocol (DTCP) deve ter permissão para se autenticar como um usuário administrativo. Nota:
A opção não está incluída na bandeira de permissões. |
|
Pode visualizar dados do profiler. |
|
É possível visualizar a configuração da interface no modo operacional e no modo de configuração. |
|
Pode visualizar chassis, classe de serviço (CoS), grupos, opções de encaminhamento e informações de configuração de interfaces. Pode modificar a configuração nos seguintes níveis de hierarquia:
|
|
Pode realizar a manutenção do sistema, incluindo iniciar uma concha local no dispositivo e se tornar o superusuário na concha (usando o comando) e parar e reiniciar o dispositivo (usando os comandos). |
|
Pode acessar a rede usando os comandos e os comandos. |
|
Pode visualizar a configuração de espelhamento de sessão. |
|
Pode modificar a configuração de espelhamento de sessão. |
|
Pode reiniciar processos de software usando o comando. |
|
Pode usar o comando para retornar a uma configuração previamente comprometida. |
|
É possível visualizar informações gerais de roteamento, protocolo de roteamento e configuração de políticas de roteamento no modo de configuração e modo operacional. |
|
Pode visualizar e configurar o roteamento geral no nível de hierarquia, protocolos de roteamento no nível de hierarquia e roteamento de informações de políticas no nível hierárquicos . |
|
Pode visualizar senhas e outras chaves de autenticação na configuração. |
|
Pode visualizar e modificar senhas e outras chaves de autenticação na configuração. |
|
É possível visualizar as informações de configuração de segurança no modo operacional e no modo de configuração. |
|
Pode visualizar e configurar informações de segurança no nível de hierarquia. |
|
Pode iniciar uma concha local no roteador ou switch usando o comando. |
|
É possível visualizar informações de configuração do Simple Network Management Protocol (SNMP) no modo operacional ou modo de configuração. |
|
Pode visualizar e modificar as informações de configuração de SNMP no nível de hierarquia. |
|
|
Pode visualizar as informações de configuração de armazenamento do Fiber Channel no nível de hierarquia. |
|
Pode modificar as informações de configuração de armazenamento do Fiber Channel no nível hierárquico . |
Pode visualizar informações de nível de sistema no modo operacional ou modo de configuração. |
|
Pode visualizar e modificar informações de configuração no nível do sistema no nível de hierarquia. |
|
Pode visualizar configurações de arquivo de rastreamento e configurar propriedades de arquivo de rastreamento. |
|
Pode modificar configurações de arquivo de rastreamento e configurar propriedades de arquivo de rastreamento. |
|
|
Pode visualizar a configuração de borda unificada na hierarquia. |
|
Pode modificar a configuração unificada relacionada à borda na hierarquia. |
Pode usar vários comandos para exibir a tabela de roteamento em todo o sistema e valores e estatísticas específicos do protocolo. Não é possível visualizar a configuração secreta. |
|
Pode visualizar toda a configuração, sem segredos, scripts de sistema e opções de eventos. Nota:
Somente usuários com permissão podem visualizar scripts de confirmação, script de operações ou configuração de script de eventos. |
Permitir e negar comandos individuais e hierarquias de declaração para aulas de login
Por padrão, todos os comandos CLI de alto nível e os níveis de hierarquia de configuração associaram níveis de privilégio de acesso. Os usuários só podem executar esses comandos e visualizar e configurar apenas aquelas declarações para as quais eles têm privilégios de acesso. Para cada classe de login, você pode permitir e negar explicitamente o uso de comandos de modo operacional e de configuração e hierarquias de declaração que de outra forma seriam permitidas ou negadas por um nível de privilégio especificado na declaração.permissions
As bandeiras de permissão concedem a um usuário acesso a comandos de modo operacional e de configuração e a níveis e declarações da hierarquia de configuração. Ao especificar uma bandeira de permissão específica na classe de login do usuário no nível de hierarquia, você concede ao usuário acesso aos níveis e declarações da hierarquia de configuração e comandos correspondentes.[edit system login class]
Para conceder acesso a todos os comandos e declarações de configuração, use a bandeira de permissões.all
Você pode permitir ou negar explicitamente o uso de comandos e declarações configurando as, e as declarações para uma aula de login.allow-commands
deny-commands
allow-configuration
deny-configuration
Nas declarações, você usa expressões regulares estendidas para definir quais comandos e declarações permitir ou negar para usuários atribuídos à classe.
Exemplo: Configure permissões de usuários com níveis de privilégio de acesso
Este exemplo configura as permissões do usuário para uma aula de login. Você configura permissões de usuário para uma aula de login para impedir que os usuários realizem ações de rede não autorizadas. Os usuários só podem executar esses comandos e visualizar e modificar apenas aquelas declarações para as quais eles têm privilégios de acesso. Essa restrição impede que usuários não autorizados executem comandos sensíveis ou configurem declarações que possam causar danos à rede.
Requisitos
Nenhuma configuração especial além da inicialização do dispositivo é necessária antes de configurar este exemplo.
Visão geral
Cada comando CLI de alto nível e cada declaração de configuração tem um nível de privilégio de acesso associado a ele. Ao configurar uma aula de login, você pode permitir ou negar explicitamente o uso de comandos de modo operacional e de configuração e declarações de configuração. Os usuários só podem executar esses comandos e visualizar e configurar apenas aquelas declarações para as quais eles têm privilégios de acesso.
Você define os privilégios de acesso para cada aula de login especificando uma ou mais bandeiras de permissão na declaração.permissions
As bandeiras de permissão concedem a um usuário acesso a comandos, declarações e hierarquias. As bandeiras de permissão não são cumulativas. Para cada aula de login, você deve listar todas as bandeiras de permissão necessárias, inclusive para exibir informações e entrar no modo de configuração.view
configure
Ao especificar uma bandeira de permissão específica na classe de login do usuário, você concede ao usuário acesso aos comandos, declarações e hierarquias correspondentes. Para conceder acesso a todos os comandos e declarações de configuração, use a bandeira de permissões.all
As bandeiras de permissão fornecem recursos somente de leitura ("simples") e de leitura e gravação (formulário que termina em controle) para um tipo de permissão.
Os bits de permissão da classe de login têm precedência sobre expressões regulares estendidas quando um usuário emite um comando com a bandeira de permissão habilitada.all
rollback
rollback
Para configurar os níveis de privilégio de acesso do usuário para uma aula de login, inclua a declaração no nível de hierarquia, seguida pelas bandeiras de permissão.permissions
[edit system login class class-name]
Configure várias permissões como uma lista separada por espaço em parênteses quadrados:
[edit system login] user@host# set class class-name permissions permission-flag user@host# set class class-name permissions [flag1 flag2 flag3]
Para visualizar as permissões disponíveis, use a ajuda sensível ao contexto da CLI e digite um ponto de interrogação (?) após a declaração:permissions
[edit system login] user@host# set class class-name permissions ?
Configuração
Este exemplo configura a classe de login.snmp-admin
Os usuários desta classe de login podem configurar e visualizar apenas parâmetros SNMP.
Configure permissões de usuários com níveis de privilégio de acesso
Procedimento passo a passo
Para configurar privilégios de acesso para a aula de login:
-
Configure a aula de login com as bandeiras de permissão.
snmp-admin
configure
snmp
snmp-control
[edit system login] user@host# set class snmp-admin permissions [configure snmp snmp-control]
As bandeiras de permissão configuradas fornecem recursos de leitura (snmp) e read-and-write (snmp-control) para SNMP, e este é o único privilégio de acesso permitido para esta classe de login. Todos os outros privilégios de acesso são negados.
-
Crie as contas de usuário que são atribuídas à aula de login.
snmp-admin
[edit system login] user@host# set user snmpuser class snmp-admin authentication plain-text-password New password: Retype new password:
Resultados
No modo de configuração, confirme sua configuração inserindo o comando.show system login
Se a saída não exibir a configuração pretendida, repita as instruções neste exemplo para corrigir a configuração.
user@host# show system login class snmp-admin { permissions [ configure snmp snmp-control ]; } user snmpuser { class snmp-admin; authentication { encrypted-password "$ABC123"; ## SECRET-DATA } }
Após a configuração do dispositivo, entre no modo de configuração.commit
Verificação
Faça login usando um nome de usuário atribuído à nova classe de login e confirme que a configuração está funcionando corretamente.
Verifique a configuração do SNMP
Propósito
Verifique se um usuário na classe de login pode configurar o SNMP.snmp-admin
Ação
No modo de configuração, configure as declarações de SNMP no nível de hierarquia.[edit snmp]
[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
Significado
O usuário da classe de login é capaz de configurar parâmetros SNMP.snmp-admin
O usuário pode configurar esses parâmetros porque as bandeiras de permissão especificadas para esta classe incluem snmp (recursos de leitura) e bits de permissão de controle de snmp (recursos de leitura e gravação).
Verifique a configuração não-SNMP
Propósito
Verifique se um usuário da classe de login não pode modificar declarações de configuração não-SNMP.snmp-admin
Ação
No modo de configuração, tente configurar qualquer declaração não SNMP, como uma declaração na hierarquia.interfaces
[edit] user@host# edit interfaces Syntax error, expecting <statement> or <identifier>.
Significado
O usuário da classe de login não é capaz de configurar a hierarquia porque as bandeiras de permissão especificadas para esta classe não permitem.snmp-admin
[edit interfaces]
Neste caso, a CLI emite uma mensagem de erro.
Expressões regulares para permitir e negar comandos de modo operacional, declarações de configuração e hierarquias
Este tópico contém as seguintes seções:
- Entendendo as declarações de permitir e negar
- Entendendo a sintaxe da declaração de permissão e negação
- Entendendo a precedência e a correspondência da declaração de permissão e negação
- Entendendo as regras de declaração de permissão e negação
- Entendendo as diferenças para as declarações *-regexps
- Usando expressões regulares em servidores de autorização remota
- Especifique expressões regulares
- Operadores de expressões regulares
- Exemplos de expressão regulares
Entendendo as declarações de permitir e negar
Cada hierarquia de declaração de configuração e comando CLI de alto nível tem um nível de privilégio de acesso associado a ele. Cada classe de login pode permitir ou negar explicitamente o uso de comandos e declarações de modo de configuração e comandos de modo operacional e configuração que de outra forma seriam permitidas ou negadas por um nível de privilégio. Os usuários só podem executar esses comandos e visualizar e configurar apenas aquelas declarações para as quais eles têm privilégios de acesso.
Os privilégios de acesso para cada classe de login são definidos por uma ou mais bandeiras de permissão especificadas na declaração no nível hierárquico .permissions
[edit system login class class-name]
Além disso, você pode permitir ou negar o uso de comandos específicos e hierarquias de configuração definindo expressões regulares estendidas. Você pode especificar as expressões regulares configurando as seguintes declarações para uma aula de login:
-
e — Permitir ou negar acesso a comandos de modo operacional e de configuração.
allow-commands
deny-commands
-
e — Permitir ou negar acesso a hierarquias de configuração específicas.
allow-configuration
deny-configuration
Nota:Essas declarações executam correspondências mais lentas, com mais flexibilidade, especialmente em correspondências curingas. No entanto, pode levar muito tempo para avaliar todas as declarações possíveis se um grande número de expressões regulares de caminho completo ou expressões curingas estiver configurado, possivelmente afetando negativamente o desempenho.
-
e — Permitir ou negar acesso a comandos específicos usando strings de expressões regulares.
allow-commands-regexps
deny-commands-regexps
-
e — Permitir ou negar acesso a hierarquias de configuração específicas usando strings de expressões regulares.
allow-configuration-regexps
deny-configuration-regexps
Se suas configurações existentes usarem as declarações ou declarações, usar as mesmas opções de configuração com as declarações ou declarações pode não produzir os mesmos resultados.allow/deny-commands
allow/deny-configuration
allow/deny-commands-regexps
allow/deny-configuration-regexps
Os métodos de pesquisa e correspondência diferem nas duas formas dessas declarações.
Permitir explicitamente hierarquias de comandos e declarações de configuração usando as declarações adiciona às permissões que a declaração já define.allow/deny-*
permissions
Da mesma forma, negar explicitamente as hierarquias de comandos e declarações de configuração usando as declarações remove permissões que a declaração já define.allow/deny-*
permissions
Por exemplo, na configuração a seguir, a permissão permite que os usuários da classe de login entrem no modo de configuração.configure
Além disso, a expressão permite que os usuários modifiquem a configuração no nível de hierarquia e a comprometam.allow-configuration
[edit system services]
[edit system login class test] user@host# set permissions configure allow-configuration "system services"
Da mesma forma, na configuração a seguir, o usuário da classe de login pode realizar todas as operações que a bandeira de permissões permite, exceto que o usuário não pode visualizar ou modificar a configuração no nível de hierarquia:all
[edit system services]
[edit system login class test] user@host# set permissions all deny-configuration "system services"
Entendendo a sintaxe da declaração de permissão e negação
Você pode configurar uma declaração apenas uma vez em cada aula de login.allow/deny-*
Quando você configura uma declaração:
-
Você pode configurar quantas expressões regulares for necessário.
-
Expressões regulares não são sensíveis ao caso
As declarações são mutuamente exclusivas com as declarações, e as declarações são mutuamente exclusivas com as declarações.allow/deny-commands
allow/deny-commands-regexps
allow/deny-configuration
allow/deny-configuration-regexps
Por exemplo, você não pode configurar ambos e na mesma classe de login.allow-configuration
allow-configuration-regexps
Para definir privilégios de acesso aos comandos, especifique expressões regulares estendidas usando as declarações e as declarações.allow-commands
deny-commands
Coloque cada expressão independente completa em parênteses e use o símbolo do tubo para separar as expressões. Não use espaços entre expressões regulares conectadas com o símbolo do tubo. A expressão completa está cercada em duas cotações.
allow-commands "(cmd1)|(cmd2)|(cmdn)" allow-configuration "(config1)|(config2)|(confign)"
Por exemplo:
[edit system login class test] user@host# set allow-commands "(ping .*)|(traceroute .*)|(show .*)|(configure .*)|(edit)|(exit)|(commit)|(rollback .*)"
Você deve usar âncoras ao especificar expressões regulares complexas com a declaração.allow-commands
Por exemplo:
[edit system login] user@host# set class test allow-commands "(^monitor)|(^ping)|(^show)|(^exit)"
Para definir privilégios de acesso a partes da hierarquia de configuração, especifique expressões regulares estendidas nas declarações e declarações.allow-configuration
deny-configuration
Coloque os caminhos completos em parênteses e use o símbolo do tubo ( |) para separar as expressões. Não use espaços entre expressões regulares conectadas com o símbolo do tubo. A expressão completa está cercada em duas cotações.
allow-configuration "(config1)|(config2)|(confign)"
Por exemplo:
[edit system login class test] user@host# set deny-configuration "(system login class)|(system services)"
Ao especificar expressões regulares estendidas usando as ou declarações, coloque cada expressão dentro das cotações (" "), e separe as expressões usando um espaço.allow/deny-commands-regexps
allow/deny-configuration-regexps
Inclua várias expressões em parênteses quadrados [ ]. Por exemplo:
[edit system login class test] user@host# set allow-configuration-regexps ["interfaces .* description .*" "interfaces .* unit .* description .*" “interfaces .* unit .* family inet address .*" "interfaces.* disable"]
Modificadores como , e não são suportados dentro da string de expressão regular a ser combinado.set
log
count
Se você usa um modificador, então nada é compatível.
Configuração correta:
[edit system login class test] user@host# set deny-commands protocols
Configuração incorreta:
[edit system login class test] user@host# set deny-commands "set protocols"
Entendendo a precedência e a correspondência da declaração de permissão e negação
Por padrão, as expressões e regulares prevalecem e expressões.allow-commands
allow-configuration
deny-commands
deny-configuration
Assim, se você configurar o mesmo comando para as declarações e declarações, então a operação de permissão prevalecerá sobre a operação de negação.allow-commands
deny-commands
Da mesma forma, se você configurar a mesma declaração para as declarações e declarações, a operação de permissão prevalecerá sobre a operação de negação.allow-configuration
deny-configuration
Por exemplo, a configuração a seguir permite que um usuário na classe de login instale software usando o comando, embora a declaração inclua o mesmo comando:test
request system software add
deny-commands
[edit system login class test] user@host# set allow-commands "request system software add" user@host# set deny-commands "request system software add"
Da mesma forma, a configuração a seguir permite que um usuário no teste de classe de login visualize e modifique a hierarquia de configuração, embora a declaração inclua a mesma hierarquia:test
[edit system services]
deny-configuration
[edit system login class test] user@host# set allow-configuration "system services" user@host# set deny-configuration "system services"
Se as declarações e as declarações tiverem duas variantes diferentes de um comando, a correspondência mais longa sempre será executada.allow-commands
deny-commands
A configuração a seguir permite que um usuário na classe de login execute o comando, mas não o comando.test
commit synchronize
commit
Isso porque é a combinação mais longa entre e , e é especificada para .commit synchronize
commit
commit synchronize
allow-commands
[edit system login class test] user@host# set allow-commands "commit synchronize" user@host# set deny-commands commit
A configuração a seguir permite que um usuário na classe de login execute o comando, mas não o comando.test
commit
commit synchronize
Isso porque é a combinação mais longa entre e , e é especificada para .commit synchronize
commit
commit synchronize
deny-commands
[edit system login class test] user@host# set allow-commands commit user@host# set deny-commands "commit synchronize"
Em contraste com as outras declarações, o comportamento padrão para as declarações é que as expressões regulares prevalecem e expressões.*-regexps
deny-commands-regexps
deny-configuration-regexps
allow-commands-regexps
allow-configuration-regexps
Você pode configurar a declaração no nível de hierarquia para forçar as expressões regulares a prevalecerem sobre as declarações.regex-additive-logic
[edit system]
allow-configuration-regexps
deny-configuration-regexps
A configuração da declaração permite que você negue hierarquias de configuração em um nível mais alto e, em seguida, apenas permita que o usuário tenha acesso a sub-hierarquias específicas.
Entendendo as regras de declaração de permissão e negação
A , e as declarações têm precedência sobre as permissões de aula de login.allow/deny-commands
allow/deny-configuration
allow/deny-commands-regexps
allow/deny-configuration-regexps
Quando você configura essas declarações, as seguintes regras se aplicam:
-
Expressões e declarações regulares também podem incluir comandos e comandos.
allow-commands
deny-commands
commit
load
rollback
save
status
update
-
Os bits de permissão da classe de login têm precedência sobre expressões regulares estendidas quando um usuário emite o comando com a bandeira de permissão habilitada.
all
rollback
rollback
-
Os usuários não podem emitir o comando ao especificar uma expressão regular estendida.
load override
Os usuários só podem emitir os comandos e configuração.merge
replace
patch
-
Você pode usar o caractere curinga * ao denotar expressões regulares. No entanto, você deve usá-lo como parte de uma expressão regular. Você não pode usar ou como a única expressão.
[ * ]
[ .* ]
Além disso, você não pode configurar a declaração com uma expressão como , porque isso avalia .allow-configuration
(interfaces (description (|.*))
allow-configuration .*
Entendendo as diferenças para as declarações *-regexps
Esta seção descreve as diferenças entre as declarações e as declarações.allow/deny-configuration
allow/deny-configuration-regexps
As declarações dividem a expressão regular em símbolos e comparam cada peça com cada parte do caminho completo da configuração especificada, enquanto as declarações se comparam com a corda completa.allow/deny-configuration-regexps
allow/deny-configuration
Para declarações, você configura um conjunto de strings em que cada string é uma expressão regular, com espaços entre os termos da string.allow/deny-configuration-regexps
Essa sintaxe oferece correspondência muito rápida, mas oferece menos flexibilidade. Para especificar expressões curingas, você deve configurar curingas para cada símbolo da corda delimitada por espaço que você deseja combinar, o que torna mais difícil usar expressões curingas para essas declarações.
Por exemplo:
-
Expressão regular que combina com um símbolo usando allow-configuration-regexps
Este exemplo mostra que é a única expressão combinada contra o primeiro símbolo da declaração.
options
[edit system] login { class test { permissions configure; allow-configuration-regexps .*options; } }
A configuração anterior corresponde às seguintes declarações:
-
definir opções de políticas condição dinâmica-dbcondition
-
definir opções de roteamento rota estática next-hop static-routenext-hop
-
definir opções de eventos geram intervalo de tempo de evento eventseconds
A configuração anterior não corresponde às seguintes declarações:
-
opções de host com nome de host do sistema
-
opções de descrição de interfaces interface-name
-
-
Expressão regular que combina com três símbolos usando allow-configuration-regexps
Este exemplo mostra que é a única expressão combinada contra o terceiro símbolo da declaração.
ssh
[edit system] login { class test { permissions configure; allow-configuration-regexps ".* .* .*ssh"; } }
No exemplo anterior, os três símbolos incluem , e , respectivamente.
.*
.*
.*ssh
A configuração anterior corresponde às seguintes declarações:
-
nome do host-ssh do sistema
-
ssh de serviços de sistema
-
serviços de sistema de saída
A configuração anterior não corresponde à seguinte declaração:
-
ssh descrição de interfacesinterface-name
-
É mais fácil usar a declaração para restringir o acesso à configuração do que usar a declaração. Ilustra o uso das declarações e declarações em diferentes configurações para alcançar o mesmo resultado de restringir o acesso a uma configuração específica.deny-configuration
deny-configuration-regexps
Tabela 2deny-configuration
deny-configuration-regexps
Configuração negada |
Usando: |
Usando: |
Resultado |
|
[edit system] login { class test { permissions configure; allow-configuration .*; deny-configuration .*xnm-ssl; } } |
[edit system] login { class test { permissions configure; allow-configuration .*; deny-configuration-regexps ".* .* .*-ssl""; } } |
A declaração de configuração a seguir é negada:
|
|
[edit system] login { class test { permissions configure; allow-configuration .*; deny-configuration ".*ssh"; } } |
[edit system] login { class test { permissions configure; allow-configuration .*; deny-configuration-regexps ".*ssh"; deny-configuration-regexps ".* .*ssh"; deny-configuration-regexps ".* .* .*ssh"; } } |
As seguintes declarações de configuração são negadas:
|
Embora as declarações também sejam úteis quando você deseja uma configuração simples, as declarações fornecem melhor desempenho e superam a ambiguidade que existe ao combinar expressões nas declarações.allow/deny-configuration
allow/deny-configuration-regexps
allow/deny-configuration
Usando expressões regulares em servidores de autorização remota
Você pode usar expressões regulares estendidas para especificar quais comandos de modo operacional e de configuração e declarações de configuração e hierarquias são permitidos ou negados para determinados usuários. Você especifica essas expressões regulares localmente no nível de hierarquia e declarações.allow/deny-commands
allow/deny-configuration
allow/deny-commands-regexps
allow/deny-configuration-regexps
[edit system login class class-name]
Você especifica essas expressões regulares remotamente especificando atributos TACACS+ ou RADIUS específicos do fornecedor da Juniper Networks na configuração do seu servidor de autorização. Quando você configura parâmetros de autorização local e remotamente, o dispositivo mescla as expressões regulares recebidas durante a autorização TACACS+ ou RADIUS com quaisquer expressões regulares definidas no dispositivo local.
A partir do Junos OS Release 18.1, as declarações e o suporte para a autorização do TACACS+.allow-commands-regexps
deny-commands-regexps
Ao especificar várias expressões regulares em uma configuração local usando as , , ou declarações, você configura expressões regulares dentro dos parênteses e as separa usando o símbolo do tubo.allow-commands
deny-commands
allow-configuration
deny-configuration
Você coloca a expressão completa em duas cotações. Por exemplo, você pode especificar vários parâmetros com a seguinte sintaxe:allow-commands
allow-commands "(cmd1)|(cmd2)|(cmdn)"
O servidor de autorização RADIUS usa os seguintes atributos e sintaxe:
Juniper-Allow-Commands += "(cmd1)|(cmd2)|(cmd3)", Juniper-Deny-Commands += "(cmd1)|(cmd2)", Juniper-Allow-Configuration += "(config1)|(config2)", Juniper-Deny-Configuration += "(config1)|(config2)",
O servidor de autorização TACACS+ usa os seguintes atributos e sintaxe:
allow-commands = "(cmd1)|(cmd2)|(cmdn)" deny-commands = "(cmd1)|(cmd2)|(cmdn)" allow-configuration = "(config1)|(config2)|(confign)" deny-configuration = "(config1)|(config2)|(confign)"
Ao especificar várias expressões regulares em uma configuração local usando as, , ou declarações, você configura expressões regulares dentro de duas cotações e as separa usando o operador de espaço.allow-commands-regexps
deny-commands-regexps
allow-configuration-regexps
deny-configuration-regexps
Você inclui a expressão completa em parênteses quadrados. Por exemplo, você pode especificar vários parâmetros de permitir comandos com a seguinte sintaxe:
allow-commands-regexps [ "cmd1" "cmd2" "cmdn" ]
O servidor de autorização RADIUS usa os seguintes atributos e sintaxe:
Juniper-Allow-Configuration-Regexps += "(config1)|(config2)|(confign)", Juniper-Deny-Configuration-Regexps += "(config1)|(config2)|(confign)",
O servidor de autorização TACACS+ usa os seguintes atributos e sintaxe:
allow-commands-regexps = "(cmd1)|(cmd2)|(cmdn)" deny-commands-regexps = "(cmd1)|(cmd2)|(cmdn)" allow-configuration-regexps = "(config1)|(config2)|(confign)" deny-configuration-regexps = "(config1)|(config2)|(confign)"
Os servidores RADIUS e TACACS+ também oferecem suporte a uma sintaxe simplificada na qual você especifica cada expressão individual em uma linha separada. Por exemplo, a sintaxe simplificada do servidor RADIUS é:
Juniper-Allow-Commands += "cmd1", Juniper-Allow-Commands += "cmd2", Juniper-Allow-Commands += "cmdn",
Da mesma forma, a sintaxe simplificada do servidor TACACS+ é:
allow-commands-regexps1 = "cmd1" allow-commands-regexps2 = "cmd2" allow-commands-regexpsn = "cmdn"
Tabela 3 diferencia a configuração de autorização local e a configuração de autorização de servidor TACACS+ usando expressões regulares.
Configuração local |
Configuração remota do TACACS+ |
---|---|
login { class local { permissions configure; allow-commands "(ping .*)|(traceroute .*)|(show .*)|(configure .*)|(edit)|(exit)|(commit)|(rollback .*)"; deny-commands .*; allow-configuration "(interfaces .* unit 0 family ethernet-switching vlan mem.* .*)|(interfaces .* native.* .*)|(interfaces .* unit 0 family ethernet-switching interface-mo.* .*)|(interfaces .* unit .*)|(interfaces .* disable)|(interfaces .* description .*)|(vlans .* vlan-.* .*)" deny-configuration .*; } } |
user = remote { login = username service = junos-exec { allow-commands1 = "ping .*" allow-commands2 = "traceroute .*" allow-commands3 = "show .*" allow-commands4 = "configure" allow-commands5 = "edit" allow-commands6 = "exit" allow-commands7 = "commit" allow-commands8 = ".*xml-mode" allow-commands9 = ".*netconf.*" allow-commands10 = ".*need-trailer" allow-commands11 = "rollback.*" allow-commands12 = "junoscript" deny-commands1 = ".*" allow-configuration1 = "interfaces .* unit 0 family ethernet-switching vlan mem.* .*" allow-configuration2 = "interfaces .* native.* .*" allow-configuration3 = "interfaces .* unit 0 family ethernet-switching interface-mo.* .*" allow-configuration4 = "interfaces .* unit .*" allow-configuration5 = "interfaces .* disable" allow-configuration6 = "interfaces .* description .*" allow-configuration7 = "interfaces .*" allow-configuration8 = "vlans .* vlan-.* .*" deny-configuration1 = ".*" local-user-name = local-username user-permissions = "configure" } } |
-
Você precisa permitir explicitamente o acesso ao modo NETCONF, local ou remotamente, emitindo os seguintes três comandos: e...
xml-mode
netconf
need-trailer
-
Ao usar a declaração, você deve permitir todas as configurações desejadas usando a declaração.
deny-configuration = ".*"
allow-configuration
No entanto, essa configuração pode afetar o limite de buffer de expressões regulares permitido para a declaração.allow-configuration
Se esse limite for excedido, a configuração permitida pode não funcionar.
Especifique expressões regulares
Ao especificar expressões regulares para comandos e declarações de configuração, preste muita atenção aos seguintes exemplos. Uma expressão regular com sintaxe inválida pode não produzir os resultados desejados, mesmo que a configuração seja comprometida sem qualquer erro.
Você deve especificar expressões regulares para comandos e declarações de configuração da mesma maneira que executar o comando ou declaração completos. lista as expressões regulares para configurar privilégios de acesso para as hierarquias e declarações.Tabela 4[edit interfaces]
[edit vlans]
Declaração |
Expressão regular |
Notas de configuração |
---|---|---|
[edit interfaces] O comando para interfaces é executado da seguinte forma: [edit] user@host# set interfaces interface-name unit interface-unit-number |
A declaração está incompleta por si só e requer a opção de executar a declaração. Como resultado, a expressão regular necessária para negar a configuração deve especificar toda a string executável com o operador no lugar de variáveis de declaração: [edit system login class class-name] user@host# set permissions configure user@host# set deny-configuration "interfaces .* unit .*" |
|
[edit vlans] O comando para VLANs é executado da seguinte forma: [edit] user@host# set vlans vlan-name vlan-id vlan-id |
Aqui, a declaração está incompleta por si só e requer a opção de executar a declaração. Como resultado, a expressão regular necessária para permitir a configuração deve especificar toda a string executável com o operador no lugar de variáveis de declaração: [edit system login class class-name] user@host# set permissions configure user@host# set allow-configuration "vlans .* vlan-id .*" |
|
Operadores de expressões regulares
Tabela 5 lista operadores de expressão regular comuns que você pode usar para permitir ou negar modos operacionais e de configuração.
Comando expressões regulares implementar as expressões regulares estendidas (modernas), conforme definido no POSIX 1003.2.
Operador |
Jogo |
Exemplo |
---|---|---|
| |
Um dos dois ou mais termos separados pela tubulação. Cada termo deve ser uma expressão independente completa em parênteses , sem espaços entre o tubo e os parênteses adjacentes. |
[edit system login class test] user@host# set permissions configure user@host# set allow-commands "(ping)|(traceroute)|(show system alarms)|(show system software)" user@host# set deny-configuration "(access)|(access-profile)|(accounting-options)|(applications)|(apply-groups)|(bridge-domains)|(chassis)|(class-of-service)" Com a configuração anterior, os usuários atribuídos à classe de login de teste têm acesso ao modo operacional restrito apenas aos comandos especificados na declaração. |
^ |
No início de uma expressão, usada para denotar onde o comando começa, onde pode haver alguma ambiguidade. |
[edit system login class test] user@host# set permissions interface user@host# set permissions interface-control user@host# set allow-commands "(^show) (log|interfaces|policer))|(^monitor)" Com a configuração anterior, os usuários designados para a aula de login de teste têm acesso à visualização e configuração da configuração da interface. A declaração concede acesso a comandos que começam com as palavras-chave. Para o primeiro filtro, os comandos especificados incluem o , e comandos. |
$ |
Personagem no final de um comando. Usado para denotar um comando que deve ser combinado exatamente até esse ponto. |
[edit system login class test] user@host# set permissions interface user@host# set allow-commands "(show interfaces$)" Com a configuração anterior, os usuários designados para a aula de login de teste podem visualizar a configuração das interfaces no modo de configuração. Os usuários também podem visualizar a configuração da interface com o comando do modo operacional. |
[ ] |
Variedade de letras ou dígitos. Para separar o início e o fim de um intervalo, use um hífen (-). |
[edit system login class test] user@host# set permissions clear user@host# set permissions configure user@host# set permissions network user@host# set permissions trace user@host# set permissions view user@host# set allow-configuration-regexps [ "interfaces [gx]e-.* unit [0-9]* description .*" ] Com a configuração anterior, os usuários designados para a aula de login de teste têm permissões de usuário no nível do operador. Esses usuários também têm acesso a configurar interfaces dentro da faixa especificada de nome da interface e número da unidade (0 a 9). |
( ) |
Um grupo de comandos indicando uma expressão completa e independente a ser avaliada. O resultado é então avaliado como parte da expressão geral. Os parênteses devem ser usados em conjunto com os operadores de tubulação, conforme explicado. |
[edit system login class test] user@host# set permissions all user@host# set allow-commands "(clear)|(configure)" user@host# deny-commands "(mtrace)|(start)|(delete)" Com a configuração acima, os usuários designados para a classe de login de teste têm permissões de nível de superusuário e têm acesso aos comandos especificados na declaração. |
* |
Zero ou mais termos. |
[edit system login class test] user@host# set permissions configure user@host# set deny-configuration "(system login class m*)" Com a configuração acima, os usuários designados para a aula de login de teste cujo nome de usuário de login começa são negados acesso à configuração. |
+ |
Um ou mais termos. |
[edit system login class test] user@host# set permissions configure user@host# set deny-configuration "(system login class m+)" Com a configuração acima, os usuários designados para a aula de login de teste cujo nome de usuário de login começa são negados acesso à configuração. |
. |
Qualquer personagem, exceto um espaço" ". |
[edit system login class test] user@host# set permissions configure user@host# set deny-configuration "(system login class m.)" Com a configuração acima, os usuários designados para a aula de login de teste cujo nome de usuário de login começa são negados acesso à configuração. |
.* |
Tudo desde o ponto especificado em diante. |
[edit system login class test] user@host# set permissions configure user@host# set deny-configuration "(system login class m .*)" Com a configuração acima, os usuários designados para a aula de login de teste cujo nome de usuário de login começa são negados acesso à configuração. Da mesma forma, a declaração nega todo o acesso de configuração sob o nível hierárquicos. Nota:
|
O operador de expressão regular não é compatível.!
Exemplos de expressão regulares
lista as expressões regulares usadas para permitir opções de configuração em duas hierarquias de configuração e, como exemplo, especificar expressões regulares.Tabela 6[edit system ntp server]
[edit protocols rip]
Tabela 6 não fornece uma lista abrangente de todas as expressões e palavras-chave regulares para todas as declarações e hierarquias de configuração. As expressões regulares listadas na tabela são validadas apenas para as hierarquias e declarações.[edit system ntp server]
[edit protocols rip]
Hierarquia de declarações |
Expressões regulares |
Configuração permitida |
Configuração negada |
---|---|---|---|
|
|||
Chave key-number |
[edit system login class test] set permissions configure set allow-configuration-regexps [ "system ntp server .*" "system ntp server .* key .*" ] set deny-configuration-regexps [ "system ntp server .* version .*" "system ntp server .* prefer" ] |
|
|
Versão version-number |
[edit system login class test] set permissions configure set allow-configuration-regexps [ "system ntp server .*" "system ntp server .* version .*" ] set deny-configuration-regexps [ "system ntp server .* key .*" "system ntp server .* prefer" ] |
|
|
Preferem |
[edit system login class test] set permissions configure set allow-configuration-regexps [ "system ntp server .*" "system ntp server .* prefer" ]; set deny-configuration-regexps [ "system ntp server .* key .*" "system ntp server .* version .*" ] |
|
|
|
|||
tamanho da mensagem message-size |
[edit system login class test] set permissions configure set allow-configuration-regexps "protocols rip message-size .*" set deny-configuration-regexps [ "protocols rip metric-in .*" "protocols rip route-timeout .*" "protocols rip update-interval .*" ] |
|
|
métrica metric-in |
[edit system login class test] set permissions configure set allow-configuration-regexps "protocols rip metric-in .*" set deny-configuration-regexps [ "protocols rip message-size .*" "protocols rip route-timeout .*" "protocols rip update-interval .*" ] |
|
|
tempo limite de rota route-timeout |
[edit system login class test] set permissions configure set allow-configuration-regexps "protocols rip route-timeout .*" set deny-configuration-regexps [ "protocols rip metric-in .*" "protocols rip message-size .*" "protocols rip update-interval .*" ] |
|
|
intervalo de atualização update-interval |
[edit system login class test] set permissions configure set allow-configuration-regexps "protocols rip update-interval .*" set deny-configuration-regexps [ "protocols rip metric-in .*" "protocols rip route-timeout .*" "protocols rip message-size .*" ] |
|
|
Como definir privilégios de acesso com declarações de configuração de permissão e de negação
Você pode definir privilégios de acesso para hierarquias de declaração de configuração usando uma combinação dos seguintes tipos de declarações:
bandeiras de permissão
e declarações
allow-configuration
deny-configuration
As bandeiras de permissão definem os limites maiores do que uma pessoa ou classe de login pode acessar e controlar. As declarações e declarações contêm uma ou mais expressões regulares que permitem ou negam hierarquias e declarações de configuração específicas.allow-configuration
deny-configuration
As declarações e as declarações têm precedência sobre bandeiras de permissão e dão ao administrador um controle mais fino sobre exatamente quais hierarquias e declarações o usuário pode visualizar e configurar.allow-configuration
deny-configuration
Este tópico explica como definir privilégios de acesso usando e declarações, mostrando exemplos de configurações de classe de login que usam essas declarações.allow-configuration
deny-configuration
Exemplos de 1 a 3 criam aulas de login que permitem aos usuários acesso a todos os comandos e declarações, exceto os definidos na declaração.deny-configuration
Observe que o bit de permissão e a bandeira de permissão são usados de forma intercambiável.
Exemplo 1
Criar uma aula de login que permita ao usuário executar todos os comandos e configurar tudo, exceto parâmetros de telnet:
Exemplo 2
Criar uma aula de login que permita ao usuário executar todos os comandos e configurar tudo, exceto declarações em qualquer classe de login cujo nome começa com "m":
-
Definir as permissões de aula de login do usuário para .
all
[edit system login] user@host# set class all-except-login-class-m permissions all
-
Inclua a declaração a seguir .
deny-configuration
[edit system login class all-except-login-class-m] user@host# set deny-configuration "system login class m.*"
Exemplo 3
Criar uma aula de login que permita ao usuário executar todos os comandos e configurar tudo, exceto os níveis de hierarquia ou:[edit system login class]
[edit system services]
-
Definir as permissões de aula de login do usuário para .
all
[edit system login] user@host# set class all-except-login-class-or-system-services permissions all
-
Inclua a declaração a seguir :
deny-configuration
[edit system login class all-except-login-class-or-system-services] user@host# set deny-configuration "(system login class) | (system services)"
Os exemplos a seguir mostram como usar e declarações para determinar permissões inversas entre si para o nível de hierarquia.allow-configuration
deny-configuration
[edit system services]
Exemplo 4
Criar uma aula de login que permita ao usuário ter privilégios de configuração completos apenas no nível hierárquicos :[edit system services]
-
Definir as permissões de aula de login do usuário para .
configure
[edit system login] user@host# set class configure-only-system-services permissions configure
-
Inclua a declaração a seguir :
allow-configuration
[edit system login class configure-only-system-services] user@host# set allow-configuration "system services"
Exemplo 5
Criar uma classe de login que permita ao usuário permissões completas para todos os comandos e todas as hierarquias de configuração, exceto o nível de hierarquia:[edit system services]
-
Definir as permissões de aula de login do usuário para .
all
[edit system login] user@host# set class all-except-system-services permissions all
-
Inclua a declaração a seguir .
deny-configuration
[edit system login class all-except-system-services] user@host# set deny-configuration "system services"
Exemplo: Use lógica aditiva com expressões regulares para especificar privilégios de acesso
Este exemplo mostra como usar a lógica aditiva ao usar expressões regulares para configurar privilégios de acesso de configuração.
Requisitos
Este exemplo usa um dispositivo que executa o Junos OS Release 16.1 ou posterior.
Visão geral
Você pode definir expressões regulares para controlar quem pode fazer alterações na configuração e o que elas podem mudar. Essas expressões regulares indicam hierarquias de configuração específicas que os usuários de uma classe de login podem acessar. Por exemplo, você pode definir expressões regulares que permitem aos usuários modificar um grupo de instâncias de roteamento e definir expressões regulares que impedem os usuários de fazer alterações em quaisquer outras instâncias de roteamento ou para outros níveis de configuração. Você define as expressões regulares configurando as declarações e as declarações para uma aula de login.allow-configuration-regexps
deny-configuration-regexps
Por padrão, a declaração prevalece sobre a declaração.deny-configuration-regexps
allow-configuration-regexps
Se uma hierarquia de configuração aparecer em uma declaração para uma aula de login, ela não será visível para os usuários dessa classe, independentemente do conteúdo da declaração.deny-configuration-regexps
allow-configuration-regexps
Se uma hierarquia de configuração não aparecer em uma declaração, ela será visível para os usuários dessa classe se ela aparecer em uma declaração .deny-configuration-regexps
allow-configuration-regexps
Você pode mudar esse comportamento padrão, permitindo uma lógica aditiva para as declarações.*-configuration-regexps
Quando você habilita a lógica aditiva, a declaração tem precedência sobre a declaração.allow-configuration-regexps
deny-configuration-regexps
Assim, se a declaração negar acesso a todas as hierarquias de configuração em um determinado nível (protocolos .*), mas a declaração permitir o acesso a uma sub-hierarquia (protocolos bgp .*), então por padrão o dispositivo nega acesso às hierarquias para usuários nessa classe de login porque a declaração prevalece.deny-configuration-regexps
allow-configuration-regexps
deny-configuration-regexps
No entanto, se você habilitar a lógica aditiva, o dispositivo permite o acesso à sub-hierarquia especificada para usuários nessa classe de login, porque a prioridade é necessária neste caso.allow-configuration-regexps
Configuração
Procedimento passo a passo
Para permitir que a lógica aditiva permita explicitamente aos usuários em uma determinada aula de login acesso a uma ou mais hierarquias de configuração individuais:
-
Inclua a declaração e negue explicitamente o acesso a hierarquias de configuração.
deny-configuration-regexps
[edit system login class class-name] user@host# set deny-configuration-regexps ["regular expression 1" "regular expression 2" "regular expression 3"]
Por exemplo:
[edit system login class class-name] user@host# set deny-configuration-regexps "protocols .*"
-
Inclua a declaração e defina expressões regulares para que as hierarquias específicas permitam.
allow-configuration-regexps
[edit system login class class-name] user@host# set allow-configuration-regexps ["regular expression 1" "regular expression 2" "regular expression 3"]
Por exemplo:
[edit system login class class-name] user@host# set allow-configuration-regexps ["protocols bgp .*" "protocols ospf .*"]
-
Habilite a lógica aditiva para as expressões regulares.
allow-configuration-regexps
deny-configuration-regexps
[edit system] user@host# set regex-additive-logic
-
Atribua a aula de login a um ou mais usuários.
[edit system login] user@host# set user username class class-name
-
Comprometa suas mudanças.
Os usuários designados para esta classe de login têm acesso às hierarquias de configuração incluídas na declaração, mas não têm acesso às outras hierarquias especificadas na declaração.
allow-configuration-regexps
deny-configuration-regexps
Ao configurar a declaração, a mudança de comportamento se aplica a todos e às declarações presentes em todas as aulas de login.regex-additive-logic
allow-configuration-regexps
deny-configuration-regexps
Se você habilitar a lógica aditiva, você deve avaliar as declarações existentes para qualquer impacto e atualizar as expressões regulares nessas declarações conforme apropriado.
Exemplos
Use expressões regulares com lógica aditiva
Propósito
Esta seção fornece exemplos de expressões regulares que usam lógica aditiva para dar a você ideias para criar configurações apropriadas para o seu sistema.
Permitir instâncias de roteamento específicas
A classe de login do exemplo a seguir inclui uma expressão regular que permite a configuração de instâncias de roteamento cujos nomes começam com ; por exemplo, , e assim por diante.CUST-VRF-
CUST-VRF-1
CUST-VRF-25
CUST-VRF-100
O exemplo também inclui uma expressão regular que impede a configuração de quaisquer instâncias de roteamento.
[edit system login class class-name] user@host# set permissions [configure routing-control view view-configuration] user@host# set deny-configuration-regexps "routing-instances .*" user@host# set allow-configuration-regexps "routing-instances CUST-VRF-.* .*"
Por padrão, a declaração tem precedência, e a configuração anterior impede que os usuários da classe de login configurem quaisquer instâncias de roteamento, independentemente do nome.deny-configuration-regexps
No entanto, se você configurar a declaração a seguir, a declaração prevalecerá.allow-configuration-regexps
Assim, os usuários podem configurar instâncias de roteamento cujos nomes começam, mas os usuários não podem configurar nenhuma outra instância de roteamento.CUST-VRF-
[edit system] user@host# set regex-additive-logic
Permitir apenas a configuração de peer BGP
A classe de login do exemplo a seguir inclui expressões regulares que impedem a configuração no nível da hierarquia, mas permitem a configuração de pares BGP:[edit protocols]
[edit system login class class-name] user@host# set permissions [configure routing-control view view-configuration] user@host# set deny-configuration-regexps "protocols .*" user@host# set allow-configuration-regexps "protocols bgp group *"
Por padrão, a configuração anterior impede que os usuários da classe de login façam alterações em quaisquer hierarquias abaixo .[edit protocols]
No entanto, se você configurar a seguinte declaração, os usuários da classe de login podem fazer alterações em pares BGP, mas os usuários não podem configurar outros protocolos ou outras declarações BGP fora do nível de hierarquia permitido.
[edit system] user@host# set regex-additive-logic
Verificação
Para verificar se você definiu corretamente os privilégios de acesso:
-
Configure uma aula de login e comprometa as mudanças.
-
Atribua a classe de login a.username
-
Faça login como designado com a nova aula de login.username
-
Tente configurar os níveis de hierarquia que são permitidos.
-
Você deve ser capaz de configurar declarações em níveis de hierarquia que foram permitidos.
-
Os níveis de hierarquia negados não devem ser visíveis.
-
Quaisquer expressões permitidas ou negadas devem prevalecer sobre quaisquer permissões concedidas com a declaração.
permissions
-
Exemplo: Configure permissões de usuário com privilégios de acesso para comandos de modo operacional
Este exemplo mostra como configurar aulas de login personalizadas e atribuir privilégios de acesso para comandos de modo operacional. Os usuários da classe de login podem executar apenas os comandos para os quais têm acesso. Isso impede que usuários não autorizados executem comandos sensíveis que possam causar danos à rede.
Requisitos
Este exemplo usa os seguintes componentes de hardware e software:
-
Um dispositivo da Juniper Networks
-
Um servidor TACACS+ (ou RADIUS)
Antes de começar, estabeleça uma conexão TCP entre o dispositivo e o servidor TACACS+. No caso do servidor RADIUS, estabeleça uma conexão UDP entre o dispositivo e o servidor RADIUS.
Visão geral e topologia
Figura 1 ilustra uma topologia simples, em que o Roteador R1 é um dispositivo da Juniper Networks e tem uma conexão TCP estabelecida com um servidor TACACS+.
Este exemplo configura o R1 com três aulas de login personalizadas: Classe 1, Classe2 e Classe3. Cada classe define privilégios de acesso para o usuário configurando a declaração e definindo expressões regulares estendidas usando as declarações e declarações.permissions
allow-commands
deny-commands
A finalidade de cada aula de login é a seguinte:
-
— define privilégios de acesso apenas para o usuário com a declaração.Class1
allow-commands
Essa aula de login oferece permissões e autorização para o usuário no nível do operador para reiniciar o dispositivo. -
— define privilégios de acesso apenas para o usuário com a declaração.Class2
deny-commands
Essa aula de login oferece permissões de usuário no nível do operador e nega acesso a comandos.set
-
— define privilégios de acesso para o usuário com as declarações e declarações.Class3
allow-commands
deny-commands
Esta aula de login oferece permissões e autorização de usuário de nível superusuário para acessar interfaces e visualizar informações do dispositivo. Ele também nega acesso ao e comandos.edit
configure
O roteador R1 tem três usuários diferentes, User1, User2 e User3 designados para as aulas de login classe1, Classe 2 e Classe3, respectivamente.
Configuração
- Configuração rápida da CLI
- Configure parâmetros de autenticação para o roteador R1
- Configure privilégios de acesso com a Declaração de comandos de permitir (Classe1)
- Configure privilégios de acesso com a Declaração de comandos de negação (Classe2)
- Configure privilégios de acesso com as declarações de comandos de permissão e de comandos de negação (Classe3)
- Resultados
Configuração rápida da CLI
Para configurar rapidamente este exemplo, copie os seguintes comandos, cole-os em um arquivo de texto, remova qualquer quebra de linha, altere todos os detalhes necessários para combinar com a configuração da sua rede, copiar e colar os comandos na CLI no nível de hierarquia e, em seguida, entrar no modo de configuração.[edit]
commit
R1
set system authentication-order tacplus set system authentication-order radius set system authentication-order password set system radius-server 10.209.1.66 secret "$ABC123" set system tacplus-server 10.209.1.66 secret "$ABC123" set system radius-options enhanced-accounting set system tacplus-options enhanced-accounting set system accounting events login set system accounting events change-log set system accounting events interactive-commands set system accounting traceoptions file auditlog set system accounting traceoptions flag all set system accounting destination tacplus server 10.209.1.66 secret "$ABC123" set system login class Class1 permissions clear set system login class Class1 permissions network set system login class Class1 permissions reset set system login class Class1 permissions trace set system login class Class1 permissions view set system login class Class1 allow-commands "request system reboot" set system login class Class2 permissions clear set system login class Class2 permissions network set system login class Class2 permissions reset set system login class Class2 permissions trace set system login class Class2 permissions view set system login class Class2 deny-commands set set system login class Class3 permissions all set system login class Class3 allow-commands configure set system login class Class3 deny-commands .* set system login user User1 uid 2001 set system login user User1 class Class1 set system login user User1 authentication encrypted-password "$ABC123" set system login user User2 uid 2002 set system login user User2 class Class2 set system login user User2 authentication encrypted-password "$ABC123" set system login user User3 uid 2003 set system login user User3 class Class3 set system login user User3 authentication encrypted-password "$ABC123" set system syslog file messages any any
Configure parâmetros de autenticação para o roteador R1
Procedimento passo a passo
Para configurar a autenticação do Roteador R1:
-
Configure a ordem em que o R1 tenta autenticar o usuário. Neste exemplo, a autenticação do servidor TACACS+ é primeiro, seguida pela autenticação do servidor RADIUS e depois pela senha local.
[edit system] user@R1# set authentication-order tacplus user@R1# set authentication-order radius user@R1# set authentication-order password
-
Configure o servidor TACACS+.
[edit system] user@R1# set tacplus-server 10.209.1.66 secret "$ABC123" user@R1# set tacplus-options enhanced-accounting user@R1# set accounting destination tacplus server 10.209.1.66 secret "$ABC123"
-
Configure o servidor RADIUS.
[edit system] user@R1# set radius-server 10.209.1.66 secret "$ABC123" user@R1# set radius-options enhanced-accounting
-
Configure parâmetros de contabilidade R1.
[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
Configure privilégios de acesso com a Declaração de comandos de permitir (Classe1)
Procedimento passo a passo
Especificar expressões regulares usando a declaração:allow-commands
-
Configure a classe de login classe 1 e atribua permissões de usuário no nível do operador.
[edit system login] user@R1# set class Class1 permissions [clear network reset trace view]
-
Configure a expressão regular para permitir que os usuários da classe reinicializem o dispositivo.
allow-commands
[edit system login] user@R1# set class Class1 allow-commands "request system reboot"
-
Configure a conta do usuário para a aula de login classe 1.
[edit system login] user@R1# set user User1 uid 2001 user@R1# set user User1 class Class1 user@R1# set user User1 authentication encrypted-password "$ABC123"
Configure privilégios de acesso com a Declaração de comandos de negação (Classe2)
Procedimento passo a passo
Especificar expressões regulares usando a declaração:deny-commands
-
Configure a classe de login classe 2 e atribua permissões de usuário no nível do operador.
[edit system login] user@R1# set class Class1 permissions [clear network reset trace view]
-
Configure a expressão regular para impedir que os usuários da classe executem comandos.
deny-commands
set
[edit system login] user@R1# set class Class1 deny-commands "set"
-
Configure a conta do usuário para a aula de login da Classe 2.
[edit system login] user@R1# set user User2 uid 2002 user@R1# set user User2 class Class2 user@R1# set user User2 authentication encrypted-password "$ABC123"
Configure privilégios de acesso com as declarações de comandos de permissão e de comandos de negação (Classe3)
Procedimento passo a passo
Especificar expressões regulares usando as declarações e as declarações:allow-commands
deny-commands
-
Configure a classe de login class3 e atribua permissões de nível de superusuário.
[edit system login] user@R1# set class Class3 permissions all
-
Configure a expressão regular para impedir que os usuários da classe executem quaisquer comandos.
deny-commands
[edit system login] user@R1# set class Class3 deny-commands ".*"
-
Configure a expressão regular para permitir que os usuários insiram no modo de configuração.
allow-commands
[edit system login] user@R1# set class Class3 allow-commands configure
-
Configure a conta do usuário para a aula de login classe3.
[edit system login] user@R1# set user User3 uid 2003 user@R1# set user User3 class Class3 user@R1# set user User3 authentication encrypted-password "$ABC123"
Resultados
No modo de configuração, confirme sua configuração inserindo o comando.show system
Se a saída não exibir a configuração pretendida, repita as instruções neste exemplo para corrigir a configuração.
user@R1# show system authentication-order [ tacplus radius password ]; radius-server { 10.209.1.66 secret "$ABC123"; } tacplus-server { 10.209.1.66 secret "$ABC123"; } radius-options { enhanced-accounting; } tacplus-options { enhanced-accounting; } accounting { events [ login change-log interactive-commands ]; traceoptions { file auditlog; flag all; } destination { tacplus { server { 10.209.1.66 secret "$ABC123"; } } } } login { class Class1 { permissions [ clear network reset trace view ]; allow-commands "request system reboot"; } class Class2 { permissions [ clear network reset trace view ]; deny-commands set; } class Class3 { 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ção
Faça login como nome de usuário atribuído à nova classe de login e confirme que a configuração está funcionando corretamente.
- Verificando a configuração da classe1
- Verificando a configuração da classe2
- Verificando a configuração da classe3
Verificando a configuração da classe1
Propósito
Verifique se as permissões e comandos permitidos na classe de login classe 1 estão funcionando.
Ação
No modo operacional, execute o comando.show system users
User1@R1> show system users 12:39PM up 6 days, 23 mins, 6 users, load averages: 0.00, 0.01, 0.00 USER TTY FROM LOGIN@ IDLE WHAT User1 p0 abc.example.net 12:34AM 12:04 cli User2 p1 abc.example.net 12:36AM 12:02 -cli (cli) User3 p2 abc.example.net 10:41AM 11 -cli (cli)
No modo operacional, execute o comando.request system reboot
User1@R1> request system ? Possible completions: reboot Reboot the system
Significado
A classe de login Class1 à qual o Usuário1 é atribuído tem permissões de usuário no nível do operador e permite que os usuários da classe executem o comando.request system reboot
A classe de login do operador predefinido tem as seguintes bandeiras de permissão especificadas:
— Pode usar comandos para limpar (excluir) informações que o dispositivo aprende com a rede e armazena em vários bancos de dados de rede.clear
clear
— Pode acessar a rede usando os comandos e os comandos.network
ping
ssh
telnet
traceroute
— Pode reiniciar processos de software usando o comando.reset
restart
trace— Pode visualizar configurações de arquivo de rastreamento e configurar propriedades de arquivo de rastreamento.
view— Pode usar vários comandos para exibir valores e estatísticas atuais em todo o sistema, tabela de roteamento e protocolo específicos. Não é possível visualizar a configuração secreta.
Para a classe de login class1, além das permissões de usuário mencionadas acima, o User1 pode executar o comando.request system reboot
A primeira saída exibe as permissões de visualização como operador, e a segunda saída mostra que o único comando que o User1 pode executar como operador é o comando.request system
request system reboot
Verificando a configuração da classe2
Propósito
Verifique se as permissões e comandos permitidos para a classe de login Classe 2 estão funcionando.
Ação
No modo operacional, execute o comando.ping
User2@R1> ping 10.209.1.66 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
A partir do prompt CLI, verifique os comandos disponíveis.
User2@R1> ? Possible completions: clear Clear information in the system 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 show Show system information ssh Start secure shell on another host start Start shell telnet Telnet to another host test Perform diagnostic debugging traceroute Trace route to remote host
A partir do prompt CLI, execute qualquer comando de conjunto.
User2@R1> set ^ unknown command.
Significado
A classe de login Class2 à qual o Usuário2 é atribuído tem permissões de usuário no nível do operador e nega acesso a todos os comandos.set
As bandeiras de permissão especificadas para a classe de login predefinida do operador são as mesmas especificadas para a Classe 1.
Verificando a configuração da classe3
Propósito
Verifique se as permissões e comandos permitidos para a classe de login classe3 estão funcionando.
Ação
No modo operacional, verifique os comandos disponíveis.
User3@R1> ? Possible completions: configure Manipulate software configuration information
Insira o modo de configuração.
User3@R1> configure Entering configuration mode [edit] User3@R1#
Significado
A classe de login Class3 à qual o Usuário3 é atribuído tem permissões de superusuário (todos), mas essa classe só permite que os usuários executem o comando.configure
A classe nega acesso a todos os outros comandos de modo operacional. Como as expressões regulares especificadas nas declarações têm precedência sobre as permissões do usuário, o User3 no R1 tem acesso apenas ao modo de configuração e o acesso negado a todos os outros comandos de modo operacional.allow/deny-commands
Exemplo: Configure permissões de usuário com privilégios de acesso para declarações de configuração e hierarquias
Este exemplo mostra como configurar aulas de login personalizadas e atribuir privilégios de acesso a hierarquias de configuração específicas. Os usuários da classe de login podem visualizar e modificar apenas aquelas declarações de configuração e hierarquias às quais têm acesso. Isso impede que usuários não autorizados modifiquem configurações de dispositivos que possam causar danos à rede.
Requisitos
Este exemplo usa os seguintes componentes de hardware e software:
-
Um dispositivo da Juniper Networks
-
Um servidor TACACS+ (ou RADIUS)
Antes de começar, estabeleça uma conexão TCP entre o dispositivo e o servidor TACACS+. No caso do servidor RADIUS, estabeleça uma conexão UDP entre o dispositivo e o servidor RADIUS.
Visão geral e topologia
Figura 2 ilustra uma topologia simples, em que o Roteador R1 é um dispositivo da Juniper Networks e tem uma conexão TCP estabelecida com um servidor TACACS+.
Este exemplo configura o R1 com duas aulas de login personalizadas: Classe 1 e Classe2. Cada classe define privilégios de acesso para o usuário configurando a declaração e definindo expressões regulares estendidas usando as , e declarações.permissions
allow-configuration
deny-configuration
allow-configuration-regexps
deny-configuration-regexps
A finalidade de cada aula de login é a seguinte:
-
— define privilégios de acesso para o usuário com as declarações e declarações.Class1
allow-configuration
deny-configuration
Essa aula de login oferece acesso apenas para configurar a hierarquia e nega todo o outro acesso no dispositivo.[edit interfaces]
Para isso, as permissões do usuário incluem fornecer acesso à configuração.configure
Além disso, a declaração permite o acesso à configuração das interfaces, e a declaração nega acesso a todas as outras hierarquias de configuração.allow-configuration
deny-configuration
Como a declaração de permissão prevalece sobre a declaração de negação, os usuários atribuídos à classe de login classe 1 podem acessar apenas o nível de hierarquia.[edit interfaces]
-
— define privilégios de acesso para o usuário com as declarações e declarações.Class2
allow-configuration-regexps
deny-configuration-regexps
Essa aula de login oferece permissões de usuário de nível superusuário e permite explicitamente a configuração sob vários níveis de hierarquia para interfaces. Também nega acesso aos níveis de hierarquia.[edit system]
[edit protocols]
O roteador R1 tem dois usuários, User1 e User2, designados para as aulas de login classe1 e Classe2, respectivamente.
Configuração
- Configuração rápida da CLI
- Configure parâmetros de autenticação para o roteador R1
- Configure privilégios de acesso com as Declarações de configuração de permissão e de negação (Classe 1)
- Configure privilégios de acesso com as declarações de permissão de configuração-regexps e deny-configuration-regexps (Classe2)
- Resultados
Configuração rápida da CLI
Para configurar rapidamente este exemplo, copie os seguintes comandos, cole-os em um arquivo de texto, remova qualquer quebra de linha, altere todos os detalhes necessários para combinar com a configuração da sua rede, copiar e colar os comandos na CLI no nível de hierarquia e, em seguida, entrar no modo de configuração.[edit]
commit
R1
set system authentication-order tacplus set system authentication-order radius set system authentication-order password set system radius-server 10.209.1.66 secret "$ABC123" set system tacplus-server 10.209.1.66 secret "$ABC123" set system radius-options enhanced-accounting set system tacplus-options enhanced-accounting set system accounting events login set system accounting events change-log set system accounting events interactive-commands set system accounting traceoptions file auditlog set system accounting traceoptions flag all set system accounting destination tacplus server 10.209.1.66 secret "$ABC123" set system login class Class1 permissions configure set system login class Class1 allow-configuration "interfaces .* unit .*" set system login class Class1 deny-configuration .* set system login class Class2 permissions all set system login class Class2 allow-configuration-regexps [ "interfaces .* description .*" "interfaces .* unit .* description .*" "interfaces .* unit .* family inet address .*" "interfaces.* disable" ] set system login class Class2 deny-configuration-regexps [ "system" "protocols" ] set system login user User1 uid 2004 set system login user User1 class Class1 set system login user User1 authentication encrypted-password "$ABC123" set system login user User2 uid 2006 set system login user User2 class Class2 set system login user User2 authentication encrypted-password "$ABC123" set system syslog file messages any any
Configure parâmetros de autenticação para o roteador R1
Procedimento passo a passo
Para configurar a autenticação do Roteador R1:
-
Configure a ordem em que o R1 tenta autenticar o usuário. Neste exemplo, a autenticação do servidor TACACS+ é primeiro, seguida pela autenticação do servidor RADIUS e depois pela senha local.
[edit system] user@R1# set authentication-order tacplus user@R1# set authentication-order radius user@R1# set authentication-order password
-
Configure o servidor TACACS+.
[edit system] user@R1# set tacplus-server 10.209.1.66 secret "$ABC123" user@R1# set tacplus-options enhanced-accounting user@R1# set accounting destination tacplus server 10.209.1.66 secret "$ABC123"
-
Configure o servidor RADIUS.
[edit system] user@R1# set radius-server 10.209.1.66 secret "$ABC123" user@R1# set radius-options enhanced-accounting
-
Configure os parâmetros de contabilidade R1.
[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
Configure privilégios de acesso com as Declarações de configuração de permissão e de negação (Classe 1)
Procedimento passo a passo
Para especificar expressões regulares usando as declarações e declarações:allow-configuration
deny-configuration
-
Configure a aula de login classe 1 com permissões.
configure
[edit system login] user@R1# set class Class1 permissions configure
-
Configure a expressão regular para permitir que os usuários da classe visualizem e modifiquem parte do nível de hierarquia.
allow-configuration
[edit interfaces]
[edit system login] user@R1# set class Class1 allow-configuration "interfaces .* unit .*"
-
Configure a expressão regular para negar acesso a todas as hierarquias de configuração.
deny-configuration
[edit system login] user@R1# set class Class1 deny-configuration .*
-
Configure a conta do usuário para a aula de login classe 1.
[edit system login] user@R1# set user User1 uid 2004 user@R1# set user User1 class Class1 user@R1# set user User1 authentication encrypted-password "$ABC123"
Configure privilégios de acesso com as declarações de permissão de configuração-regexps e deny-configuration-regexps (Classe2)
Procedimento passo a passo
Para especificar expressões regulares usando as declarações e declarações:allow-configuration-regexps
deny-configuration-regexps
-
Configure a classe de login class2 e atribua permissões de superusuário (todos).
[edit system login] user@R1# set class Class2 permissions all
-
Configure a expressão regular para permitir que os usuários da classe acessem várias hierarquias sob o nível hierárquico .
allow-configuration-regexps
[edit interfaces]
[edit system login] user@R1# set class Class2 allow-configuration-regexps [ "interfaces .* description .*" "interfaces .* unit .* description .*" "interfaces .* unit .* family inet address .*" "interfaces.* disable" ]
-
Configure a expressão regular para impedir que os usuários da classe visualizam ou modifiquem a configuração nos níveis de hierarquia e hierarquia.
deny-configuration-regexps
[edit system]
[edit protocols]
[edit system login] user@R1# set class Class2 deny-configuration-regexps [ "system" "protocols" ]
-
Configure a conta do usuário para a aula de login da Classe 2.
[edit system login] user@R1# set user User2 uid 2006 user@R1# set user User2 class Class2 user@R1# set user User2 authentication encrypted-password "$ABC123"
Resultados
No modo de configuração, confirme sua configuração inserindo o comando.show system
Se a saída não exibir a configuração pretendida, repita as instruções neste exemplo para corrigir a configuração.
user@R1# show system authentication-order [ tacplus radius password ]; radius-server { 10.209.1.66 secret "$ABC123"; } tacplus-server { 10.209.1.66 secret "$ABC123"; } radius-options { enhanced-accounting; } tacplus-options { enhanced-accounting; } accounting { events [ login change-log interactive-commands ]; traceoptions { file auditlog; flag all; } destination { tacplus { server { 10.209.1.66 secret "$ABC123"; } } } } login { class Class1 { permissions configure; allow-configuration "interfaces .* unit .*"; deny-configuration .*; } class Class2 { permissions all; allow-configuration-regexps [ "interfaces .* description .*" "interfaces .* unit .* description .*" "interfaces .* unit .* family inet address .*" "interfaces.* disable" ]; 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ção
Faça login como nome de usuário atribuído à nova classe de login e confirme que a configuração está funcionando corretamente.
Verifique a configuração da classe1
Propósito
Verifique se as permissões permitidas na aula de login da Classe 1 estão funcionando.
Ação
No modo operacional, verifique os comandos disponíveis.
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
No modo de configuração, verifique as permissões de configuração disponíveis.
User1@R1# edit ? Possible completions: > interfaces Interface configuration
Significado
O User1 tem permissões de usuário, como visto na primeira saída.configure
Além disso, no modo de configuração, o User1 tem acesso ao nível de hierarquia, mas apenas a esse nível de hierarquia, como visto na segunda saída.interfaces
Verifique a configuração da classe2
Propósito
Verifique se a configuração da Classe 2 está funcionando como esperado.
Ação
No modo de configuração, acesse a configuração.interfaces
[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
No modo de configuração, acesse as hierarquias e configuração.system
protocols
User2@R1# edit system ^ Syntax error, expecting <statement> or <identifier>. User2@R1# edit protocols ^ Syntax error, expecting <statement> or <identifier>.
Significado
O User2 tem permissões para configurar interfaces no R1, mas o usuário não tem permissão para visualizar ou modificar os níveis de hierarquia.[edit system]
[edit protocols]
Tabela de histórico de alterações
A compatibillidadde com o recurso dependerá da platadorma e versão utilizada. Use o Feature Explorer para saber se o recurso é compatível com sua plataforma.
allow-commands-regexps
deny-commands-regexps