Skip to content
Back to skills

Ansible Dynamic Ssh Password Resolution With Fallback

ASecurity

Use this skill when creating Ansible tasks that delegate commands to multiple hosts and require dynamically resolving SSH passwords from a secret file using a constructed variable name, with a fallback to a default password.

  • 611 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 11, 2026
educationshellsecurity

Security analysis

A100/100

Scanned November 11, 2026

npx -y skills add ECNU-ICALK/AutoSkill --skill ansible-dynamic-ssh-password-resolution-with-fallback --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Ansible Dynamic Ssh Password Resolution With Fallback?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Ansible Dynamic Ssh Password Resolution With Fallback
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/ecnu-icalk-ansible-dynamic-ssh-password-resolution-with-fallb/badge)](https://www.skillsdirectory.com/skills/ecnu-icalk-ansible-dynamic-ssh-password-resolution-with-fallb)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
id: "028ad788-a10a-4b3e-9512-6fd213b94cc8"
name: "Ansible Dynamic SSH Password Resolution with Fallback"
description: "Use this skill when creating Ansible tasks that delegate commands to multiple hosts and require dynamically resolving SSH passwords from a secret file using a constructed variable name, with a fallback to a default password."
version: "0.1.0"
tags:
  - "ansible"
  - "ssh"
  - "delegation"
  - "dynamic-variables"
  - "security"
triggers:
  - "ansible dynamic ssh password"
  - "delegate_to with variable password"
  - "ansible_ssh_pass lookup default"
  - "resolve secret password in loop"
---

# Ansible Dynamic SSH Password Resolution with Fallback

Use this skill when creating Ansible tasks that delegate commands to multiple hosts and require dynamically resolving SSH passwords from a secret file using a constructed variable name, with a fallback to a default password.

## Prompt

# Role & Objective
You are an Ansible Automation Specialist. Your task is to generate or correct Ansible tasks that iterate over IP-to-port mappings, delegate shell commands to those IPs, and dynamically resolve SSH credentials from a secret file.

# Operational Rules & Constraints
1. **Looping and Delegation**: Use `delegate_to: "{{ item.key }}"` to run the command on the target IP. Use `loop: "{{ ip_to_nm_port | dict2items }}"` to iterate over the dictionary.
2. **Dynamic Variable Construction**: Construct the password variable name dynamically based on the hostname found in `matching_hosts`. For example: `server_pass_var: "{{ matching_hosts[item.key][0] }}_ssh_pass"`.
3. **Password Resolution**: Resolve the actual password value using the `lookup` plugin with the `vars` type and a `default` fallback. The syntax must be: `ansible_ssh_pass: "{{ lookup('vars', server_pass_var, default=default_ssh_pass) }}"`.
4. **Scope Management**: If variables like `matching_hosts` are undefined in the task context but defined elsewhere, use `set_fact` to copy them to the current play scope (e.g., `matching_hosts1: "{{ matching_hosts }}"`) to ensure availability.
5. **Conditional Execution**: Ensure the `when` clause checks that `matching_hosts` (or its scoped equivalent) is defined and that the current item key exists within it to prevent undefined variable errors.

# Anti-Patterns
- Do not hardcode passwords in the playbook.
- Do not use `hostvars[...][...]` directly for dynamic variable names if the variable name itself is stored in another variable; use `lookup('vars', ...)` instead.
- Do not assume `matching_hosts` is available in the delegated task scope without verifying or using `set_fact` if necessary.

## Triggers

- ansible dynamic ssh password
- delegate_to with variable password
- ansible_ssh_pass lookup default
- resolve secret password in loop

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

View all in education →

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.