1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00

win_credential - fix encoding for text based secrets (#54695)

* win_credential - fix encoding for text based secrets

* Fix py2 encoding issues
This commit is contained in:
Jordan Borean 2019-04-02 09:29:05 +10:00 committed by GitHub
parent 95e5f89089
commit c40f41d519
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 9 additions and 4 deletions

View file

@ -555,7 +555,7 @@ if ($null -ne $secret) {
if ($secret_format -eq "base64") {
$secret = [System.Convert]::FromBase64String($secret)
} else {
$secret = [System.Text.Encoding]::UTF8.GetBytes($secret)
$secret = [System.Text.Encoding]::Unicode.GetBytes($secret)
}
}

View file

@ -45,7 +45,8 @@ options:
data_format:
description:
- Controls the input type for I(data).
- If C(text), I(data) is a text string that is UTF-8 encoded to bytes.
- If C(text), I(data) is a text string that is UTF-16LE encoded to
bytes.
- If C(base64), I(data) is a base64 string that is base64 decoded to
bytes.
type: str
@ -88,7 +89,7 @@ options:
secret_format:
description:
- Controls the input type for I(secret).
- If C(text), I(secret) is a text string that is UTF-8 encoded to bytes.
- If C(text), I(secret) is a text string that is UTF-16LE encoded to bytes.
- If C(base64), I(secret) is a base64 string that is base64 decoded to
bytes.
type: str

View file

@ -409,6 +409,10 @@
register: generic_password_actual
vars: *become_vars
- name: set encoded password result
set_fact:
encoded_pass: '{{ "genericpass" | string | b64encode(encoding="utf-16-le") }}'
- name: assert create generic password
assert:
that:
@ -419,7 +423,7 @@
- generic_password_actual.comment == None
- generic_password_actual.name == test_hostname
- generic_password_actual.persistence == "Enterprise"
- generic_password_actual.secret == "genericpass"|b64encode
- generic_password_actual.secret == encoded_pass
- generic_password_actual.type == "Generic"
- generic_password_actual.username == "genericuser"