Agent: Capture secrets if missing username in SSHCredentialCollector
This commit is contained in:
parent
d5a125d985
commit
9edfe6979b
|
@ -45,7 +45,7 @@ class SSHCredentialCollector(ICredentialCollector):
|
||||||
ssh_keypair.get("private_key", ""), ssh_keypair.get("public_key", "")
|
ssh_keypair.get("private_key", ""), ssh_keypair.get("public_key", "")
|
||||||
)
|
)
|
||||||
|
|
||||||
if identity is not None:
|
if any([identity, secret]):
|
||||||
ssh_credentials.append(Credentials(identity, secret))
|
ssh_credentials.append(Credentials(identity, secret))
|
||||||
|
|
||||||
return ssh_credentials
|
return ssh_credentials
|
||||||
|
|
|
@ -43,6 +43,12 @@ def test_ssh_info_result_parsing(monkeypatch, patch_telemetry_messenger):
|
||||||
"private_key": None,
|
"private_key": None,
|
||||||
},
|
},
|
||||||
{"name": "guest", "home_dir": "/", "public_key": None, "private_key": None},
|
{"name": "guest", "home_dir": "/", "public_key": None, "private_key": None},
|
||||||
|
{
|
||||||
|
"name": "",
|
||||||
|
"home_dir": "/home/mcus",
|
||||||
|
"public_key": "PubKey",
|
||||||
|
"private_key": "PrivKey",
|
||||||
|
},
|
||||||
]
|
]
|
||||||
patch_ssh_handler(ssh_creds, monkeypatch)
|
patch_ssh_handler(ssh_creds, monkeypatch)
|
||||||
|
|
||||||
|
@ -53,11 +59,13 @@ def test_ssh_info_result_parsing(monkeypatch, patch_telemetry_messenger):
|
||||||
|
|
||||||
ssh_keypair1 = SSHKeypair("ExtremelyGoodPrivateKey", "SomePublicKeyUbuntu")
|
ssh_keypair1 = SSHKeypair("ExtremelyGoodPrivateKey", "SomePublicKeyUbuntu")
|
||||||
ssh_keypair2 = SSHKeypair("", "AnotherPublicKey")
|
ssh_keypair2 = SSHKeypair("", "AnotherPublicKey")
|
||||||
|
ssh_keypair3 = SSHKeypair("PrivKey", "PubKey")
|
||||||
|
|
||||||
expected = [
|
expected = [
|
||||||
Credentials(identity=username, secret=ssh_keypair1),
|
Credentials(identity=username, secret=ssh_keypair1),
|
||||||
Credentials(identity=username2, secret=ssh_keypair2),
|
Credentials(identity=username2, secret=ssh_keypair2),
|
||||||
Credentials(identity=username3, secret=None),
|
Credentials(identity=username3, secret=None),
|
||||||
|
Credentials(identity=None, secret=ssh_keypair3),
|
||||||
]
|
]
|
||||||
collected = SSHCredentialCollector(patch_telemetry_messenger).collect_credentials()
|
collected = SSHCredentialCollector(patch_telemetry_messenger).collect_credentials()
|
||||||
assert expected == collected
|
assert expected == collected
|
||||||
|
|
Loading…
Reference in New Issue