Anons79 Mini Shell

Directory : /lib/python2.7/site-packages/ansible/modules/network/nxos/
Upload File :
Current File : //lib/python2.7/site-packages/ansible/modules/network/nxos/nxos_aaa_server.pyo

�
�Udac@s�idd6dgd6dd6ZdZdZdZd	d
lZd	dlmZmZd	dlmZm	Z	d	d
l
mZidd6dd6dd6Zd�Z
d�Zd�Zd�Zd�Zd�Zedkr�e�nd
S(s1.1tmetadata_versiontpreviewtstatustnetworktsupported_bys�
---

module: nxos_aaa_server
extends_documentation_fragment: nxos
version_added: "2.2"
short_description: Manages AAA server global configuration.
description:
    - Manages AAA server global configuration
author:
    - Jason Edelman (@jedelman8)
notes:
    - Tested against NXOSv 7.3.(0)D1(1) on VIRL
    - The server_type parameter is always required.
    - If encrypt_type is not supplied, the global AAA server key will be
      stored as encrypted (type 7).
    - Changes to the global AAA server key with encrypt_type=0
      are not idempotent.
    - state=default will set the supplied parameters to their default values.
      The parameters that you want to default must also be set to default.
      If global_key=default, the global key will be removed.
options:
    server_type:
        description:
            - The server type is either radius or tacacs.
        required: true
        choices: ['radius', 'tacacs']
    global_key:
        description:
            - Global AAA shared secret or keyword 'default'.
    encrypt_type:
        description:
            - The state of encryption applied to the entered global key.
              O clear text, 7 encrypted. Type-6 encryption is not supported.
        choices: ['0', '7']
    deadtime:
        description:
            - Duration for which a non-reachable AAA server is skipped,
              in minutes or keyword 'default.
              Range is 1-1440. Device default is 0.
    server_timeout:
        description:
            - Global AAA server timeout period, in seconds or keyword 'default.
              Range is 1-60. Device default is 5.
    directed_request:
        description:
            - Enables direct authentication requests to AAA server or keyword 'default'
              Device default is disabled.
        choices: ['enabled', 'disabled']
    state:
        description:
            - Manage the state of the resource.
        default: present
        choices: ['present','default']
s
# Radius Server Basic settings
  - name: "Radius Server Basic settings"
    nxos_aaa_server:
        server_type: radius
        server_timeout: 9
        deadtime: 20
        directed_request: enabled

# Tacacs Server Basic settings
  - name: "Tacacs Server Basic settings"
    nxos_aaa_server:
        server_type: tacacs
        server_timeout: 8
        deadtime: 19
        directed_request: disabled

# Setting Global Key
  - name: "AAA Server Global Key"
    nxos_aaa_server:
        server_type: radius
        global_key: test_key
s�
commands:
    description: command sent to the device
    returned: always
    type: list
    sample: ["radius-server deadtime 22", "radius-server timeout 11",
             "radius-server directed-request"]
i����N(tload_configtrun_commands(tnxos_argument_spect
check_args(t
AnsibleModulet5tserver_timeoutt0tdeadtimetdisabledtdirected_requestcCs!i|d6dd6}t||�S(Ntcommandttexttoutput(R(Rtmodule((sP/usr/lib/python2.7/site-packages/ansible/modules/network/nxos/nxos_aaa_server.pytexecute_show_command~s
cCsGg}x:|D]2}t|t�r2|j|�q
|j|�q
W|S(N(t
isinstancetlisttextendtappend(t
command_liststflat_command_listR((sP/usr/lib/python2.7/site-packages/ansible/modules/network/nxos/nxos_aaa_server.pytflatten_list�s
cCs�i}dj|�}dj|�}dj|�}dj|�}t||�d}|j�}x`|D]X}	|	jd�r�|	jd�d|d	<qh|	jd
�rh|	jd�d|d
<qhqhWt||�d}
t|
�r�|
jdd�|d
<n
d|d
<t||�d}yBtj||tj	�}|j
�}
|
djdd�|d<Wn!ttfk
r~d|d<nX|S(Nsshow {0}-servers show {0}-server directed-requestsshow run | sec {0}s&.*{0}-server\skey\s\d\s+(?P<key>\S+).*ittimeoutt:iRR
s
tRRtkeys"t
global_key(tformatRt
splitlinest
startswithtsplittbooltreplacetretmatchtDOTALLt	groupdicttAttributeErrort	TypeErrortNone(tserver_typeRtaaa_server_infotserver_commandtrequest_commandtglobal_key_commandt	aaa_regextserver_bodytsplit_servertlinetrequest_bodytkey_bodytmatch_global_keyt	group_key((sP/usr/lib/python2.7/site-packages/ansible/modules/network/nxos/nxos_aaa_server.pytget_aaa_server_info�s0

cCs,g}|jd�}|jd�}|jd�}|jdd�}|jd�}|dk	r||jdj||��n|dk	r�|jdj||��n|dk	r�|d	kr�|jd
j|��q�|dkr�|jdj|��q�n|dk	r(|jd
j|||��n|S(NR
RRtencrypt_typet7R s{0}-server deadtime {1}s{0}-server timeout {1}tenableds{0}-server directed-requestRsno {0}-server directed-requests{0}-server key {1} {2}(tgetR-RR!(tparamsR.tcmdsR
RRR<R ((sP/usr/lib/python2.7/site-packages/ansible/modules/network/nxos/nxos_aaa_server.pytconfig_aaa_server�s&
c	CsCg}|jd�}|jd�}|jd�}|jd�}|jd�}|dk	r�|jd�tdkr�|jdj|��n|dk	r�|jd�tdkr�|jdj|��n|dk	r|jd�tdkr|jdj|��n|dk	r?|dk	r?|jdj||��n|S(	NR
RRR sno {0}-server deadtime 1sno {0}-server timeout 1sno {0}-server directed-requestsno {0}-server key 7 {1}(R?R-tPARAM_TO_DEFAULT_KEYMAPRR!(	texistingR@R.RAR
RRR texisting_key((sP/usr/lib/python2.7/site-packages/ansible/modules/network/nxos/nxos_aaa_server.pytdefault_aaa_server�s%%%cCs�tdtdddddgdt�dtddd	t�d
tdddddg�d
tdd�dtdd�dtddddddg�dtdddgdd��}|jt�td|dt�}t�}t||�itd6gd6|d6}|jd}|jd}|jd
}|jd
}|jd}|jd}	|jd}
|r|r|j	dd�ntd|d|d
|d
|d|d|	�}td�|j
�D��}t||�}
g}|
dkr�|rGy1t|�dkst|�dkrt
�nWqGt
k
rC|j	dd�qGXn|r�y1t|�d kstt|�d!kr}t
�nWq�t
k
r�|j	dd"�q�Xntt|j
��j|
j
���}|r|t||�}|r�|j|�q�q|n|
dkr|xE|j
�D]7\}}|dkr|dkr|j	dd#�qqWt|
||�}|r||j|�q|nt|�}|r�t|d<|js�t||�nd$|kr�|jd�n||d<n|j|�dS(%NR.ttypetstrtchoicestradiusttacacstrequiredR tno_logR<RR=R
RRR>Rtdefaulttstatetpresentt
argument_spectsupports_check_modetchangedtcommandstwarningstmsgs*encrypt_type must be used with global_key.css-|]#\}}|dk	r||fVqdS(N(R-(t.0tktv((sP/usr/lib/python2.7/site-packages/ansible/modules/network/nxos/nxos_aaa_server.pys	<genexpr>sii�s.deadtime must be an integer between 0 and 1440ii<s2server_timeout must be an integer between 1 and 60s5Parameters must be set to "default"when state=defaultt	configure(tdicttTruetupdateRR	RRtFalseR@t	fail_jsontitemsR;tintt
ValueErrortsett
differenceRBRRFRt
check_modeRtpopt	exit_json(RQRRUtresultsR.R R<R
RRROtargstproposedRDRTtdeltaRRtvalueRA((sP/usr/lib/python2.7/site-packages/ansible/modules/network/nxos/nxos_aaa_server.pytmain�s�!
	








$

	$

		
	
t__main__(tANSIBLE_METADATAt
DOCUMENTATIONtEXAMPLEStRETURNR't&ansible.module_utils.network.nxos.nxosRRRRtansible.module_utils.basicR	RCRRR;RBRFRmt__name__(((sP/usr/lib/python2.7/site-packages/ansible/modules/network/nxos/nxos_aaa_server.pyt<module>s*


9	
			
	%			U

Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]