2017-08-25 15:25:15 +00:00
|
|
|
---
|
|
|
|
- block:
|
|
|
|
- name: Create user with password
|
|
|
|
ios_user:
|
|
|
|
name: auth_user
|
|
|
|
privilege: 15
|
|
|
|
role: network-operator
|
|
|
|
state: present
|
2018-02-02 14:50:15 +00:00
|
|
|
provider: "{{ cli }}"
|
2017-08-25 15:25:15 +00:00
|
|
|
configured_password: pass123
|
|
|
|
|
|
|
|
- name: test login
|
|
|
|
expect:
|
2017-10-25 09:07:07 +00:00
|
|
|
command: "ssh auth_user@{{ ansible_ssh_host }} -p {{ ansible_ssh_port|default(22) }} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o PubkeyAuthentication=no show version"
|
2017-08-25 15:25:15 +00:00
|
|
|
responses:
|
|
|
|
(?i)password: "pass123"
|
|
|
|
|
|
|
|
- name: test login with invalid password (should fail)
|
|
|
|
expect:
|
2017-10-25 09:07:07 +00:00
|
|
|
command: "ssh auth_user@{{ ansible_ssh_host }} -p {{ ansible_ssh_port|default(22) }} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o PubkeyAuthentication=no show version"
|
2017-08-25 15:25:15 +00:00
|
|
|
responses:
|
|
|
|
(?i)password: "badpass"
|
|
|
|
ignore_errors: yes
|
|
|
|
register: results
|
|
|
|
|
|
|
|
- name: check that attempt failed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- results.failed
|
|
|
|
|
|
|
|
always:
|
|
|
|
- name: delete user
|
|
|
|
ios_user:
|
|
|
|
name: auth_user
|
|
|
|
state: absent
|
2018-02-02 14:50:15 +00:00
|
|
|
provider: "{{ cli }}"
|
2017-08-25 15:25:15 +00:00
|
|
|
register: result
|
2017-12-05 09:41:49 +00:00
|
|
|
|
|
|
|
- name: reset connection
|
|
|
|
meta: reset_connection
|
2018-07-19 14:28:52 +00:00
|
|
|
|
|
|
|
|
|
|
|
- block:
|
|
|
|
- name: Create user with sshkey
|
|
|
|
ios_user:
|
|
|
|
name: ssh_user
|
|
|
|
privilege: 15
|
|
|
|
role: network-operator
|
|
|
|
state: present
|
|
|
|
provider: "{{ cli }}"
|
|
|
|
sshkey: "{{ lookup('file', 'files/test_rsa.pub') }}"
|
|
|
|
|
|
|
|
- name: test sshkey login
|
|
|
|
shell: "ssh ssh_user@{{ ansible_ssh_host }} -p {{ ansible_ssh_port|default(22) }} -o IdentityFile={{ role_path }}/files/test_rsa -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o PubkeyAuthentication=yes show version"
|
|
|
|
|
|
|
|
- name: test login without sshkey (should fail)
|
|
|
|
expect:
|
|
|
|
command: "ssh ssh_user@{{ ansible_ssh_host }} -p {{ ansible_ssh_port|default(22) }} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o PubkeyAuthentication=no show version"
|
|
|
|
responses:
|
|
|
|
(?i)password: badpass
|
|
|
|
ignore_errors: yes
|
|
|
|
register: results
|
|
|
|
|
|
|
|
- name: check that attempt failed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- results.failed
|
|
|
|
|
|
|
|
always:
|
|
|
|
- name: delete user
|
|
|
|
ios_user:
|
|
|
|
name: ssh_user
|
|
|
|
state: absent
|
|
|
|
provider: "{{ cli }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- name: reset connection
|
|
|
|
meta: reset_connection
|