Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Altere o nível de privilégio do usuário para uma ação de política de eventos

Apenas os superusuadores podem configurar políticas de eventos. Por padrão, as ações de política de eventos — como a execução de comandos de modo operacional, o upload de arquivos e a execução de scripts de eventos SLAX e XSLT — são executadas pelo usuário root, porque o processo de evento (eventd) é executado com privilégios raiz.

Nota:

Para evitar a execução de código Python não autorizado em dispositivos que executam o Junos OS, por padrão, o Junos OS executa scripts de eventos Python usando os privilégios de acesso do usuário e grupo nobodygenéricos e desprivilegiados.

Em alguns casos, você pode querer que uma ação política de eventos seja executada com privilégios restritos. Por exemplo, suponha que você configure uma política de eventos que executa um script se uma interface cair. O script inclui chamadas de procedimento remoto (RPCs) para alterar a configuração do dispositivo se determinadas condições estiverem presentes. Se você não quiser que o script altere a configuração, você pode executar o script com um perfil de usuário restrito. Quando o script é executado com um perfil de usuário que permite alterações de configuração, os RPCs para alterar a configuração falham.

Você pode associar um usuário a cada ação em uma política de eventos. Se um usuário não estiver associado a uma ação de política de eventos, a ação será executada como raiz do usuário por padrão.

Para especificar o usuário sob cujos privilégios uma ação é executada, configure a user-name declaração.

Você pode incluir esta declaração nos seguintes níveis de hierarquia:

  • [edit event-options policy policy-name then change-configuration]

  • [edit event-options policy policy-name then event-script filename]

    Nota:

    A user-name declaração só se aplica aos scripts de eventos SLAX e XSLT. Esta declaração não tem efeito quando configurada para scripts de eventos Python.

  • [edit event-options policy policy-name then execute-commands]

    Nota:

    Se você incluir o op url comando para executar um script remoto como uma ação de política de eventos, os scripts Python são sempre executados usando os privilégios de acesso do usuário e grupo nobodygenéricos e desprivilegiados. Se você não configurar a declaração, os user-name scripts SLAX e XSLT são executados com privilégios raiz.

  • [edit event-options policy policy-name then upload filename (filename | committed) destination destination-name]

Por padrão, o Junos OS executa scripts de eventos Python com os privilégios de acesso do usuário e grupo genéricos e desprivilegiados nobody. A partir do Junos OS Release 16.1R3, você pode executar um script de evento Python local sob os privilégios de acesso de um usuário específico. Para especificar o usuário, configure a python-script-user username declaração no nível de [edit event-options event-script file filename] hierarquia.

Nota:

Para permitir que um usuário que não pertence ao usuário ou classe de grupo do arquivo execute um script de automação Python não assinado, as permissões de arquivo do script devem incluir permissão de leitura para outros.

Nota:

O nome de usuário que você especifica para as declarações e python-script-user declarações user-name deve ser configurado no nível de [edit system login] hierarquia.

Tabela de histórico de lançamento
Lançamento
Descrição
16.1R3
A partir do Junos OS Release 16.1R3, você pode executar um script de evento Python local sob os privilégios de acesso de um usuário específico.