|
|
|
- name: test that endpoint offers Negotiate auth
|
|
|
|
uri:
|
|
|
|
url: http://{{ httpbin_host }}/gssapi
|
|
|
|
status_code: 401
|
|
|
|
register: no_auth_failure
|
|
|
|
failed_when: no_auth_failure.www_authenticate != 'Negotiate'
|
|
|
|
|
|
|
|
- name: test Negotiate auth over HTTP with explicit credentials
|
|
|
|
uri:
|
|
|
|
url: http://{{ httpbin_host }}/gssapi
|
|
|
|
use_gssapi: yes
|
|
|
|
url_username: '{{ krb5_username }}'
|
|
|
|
url_password: '{{ krb5_password }}'
|
|
|
|
return_content: yes
|
|
|
|
register: http_explicit
|
|
|
|
|
|
|
|
- name: test Negotiate auth over HTTPS with explicit credentials
|
|
|
|
uri:
|
|
|
|
url: https://{{ httpbin_host }}/gssapi
|
|
|
|
use_gssapi: yes
|
|
|
|
url_username: '{{ krb5_username }}'
|
|
|
|
url_password: '{{ krb5_password }}'
|
|
|
|
return_content: yes
|
|
|
|
register: https_explicit
|
|
|
|
|
|
|
|
- name: assert test Negotiate auth with implicit credentials
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- http_explicit.status == 200
|
|
|
|
- http_explicit.content | trim == 'Microsoft Rulz'
|
|
|
|
- https_explicit.status == 200
|
|
|
|
- https_explicit.content | trim == 'Microsoft Rulz'
|
|
|
|
|
|
|
|
- name: skip tests on macOS, I cannot seem to get it to read a credential from a custom ccache
|
|
|
|
when: ansible_facts.distribution != 'MacOSX'
|
|
|
|
block:
|
|
|
|
- name: get Kerberos ticket for implicit auth tests
|
|
|
|
httptester_kinit:
|
|
|
|
username: '{{ krb5_username }}'
|
|
|
|
password: '{{ krb5_password }}'
|
|
|
|
|
|
|
|
- name: test Negotiate auth over HTTP with implicit credentials
|
|
|
|
uri:
|
|
|
|
url: http://{{ httpbin_host }}/gssapi
|
|
|
|
use_gssapi: yes
|
|
|
|
return_content: yes
|
|
|
|
register: http_implicit
|
|
|
|
|
|
|
|
- name: test Negotiate auth over HTTPS with implicit credentials
|
|
|
|
uri:
|
|
|
|
url: https://{{ httpbin_host }}/gssapi
|
|
|
|
use_gssapi: yes
|
|
|
|
return_content: yes
|
|
|
|
register: https_implicit
|
|
|
|
|
|
|
|
- name: assert test Negotiate auth with implicit credentials
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- http_implicit.status == 200
|
|
|
|
- http_implicit.content | trim == 'Microsoft Rulz'
|
|
|
|
- https_implicit.status == 200
|
|
|
|
- https_implicit.content | trim == 'Microsoft Rulz'
|