3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Terraform + Vault + Ansibleで作る!特権アクセス管理の自動構築フロー完全解説【連載第2回】

Posted at

☑ゴール

前回の連載第1回では、特権ID管理の全体像を整理しながら、Vaultを使った特権アクセス管理の構成方針を紹介しました。

本記事(第2回)では、 Terraform + Vault + Ansible を用いた、 完全自動構築フローの中核ステップを、 **「実装コード付き」かつ「1クリック展開可能な構成」**で徹底解説します。


⚡ Step 1 : TerraformでVaultの認証方式とポリシーを定義

resource "vault_auth_backend" "userpass" {
type = "userpass"
}

resource "vault_policy" "pam_policy" {
name = "pam-admin"
policy = <<EOT
path "secret/data/pam/*" {
capabilities = ["create", "read", "update", "delete", "list"]
}
EOT
}

この構成により、Vaultにおける userpass認証 と PAM専用のアクセス制御ポリシーを定義できます。
すべてコード化されているため、再現性・監査性・自動展開性が大幅に向上します。


🔐 Step 2 : AnsibleでVaultのSecretを取得・反映

  • name: Get PAM credentials from Vault
    uri:
    url: "https://vault.example.com/v1/secret/data/pam/credential"
    method: GET
    headers:
    X-Vault-Token: "{{ vault_token }}"
    return_content: yes
    status_code: 200
    register: pam_secret

  • name: Set PAM credentials
    set_fact:
    pam_user: "{{ pam_secret.json.data.data.username }}"
    pam_pass: "{{ pam_secret.json.data.data.password }}"

Vaultに保存された認証情報を取得し、Ansible変数へ格納します。
以降のタスク内で pam_user / pam_passを呼び出して、SSHやDB設定へ安全に反映可能です。


🔄 Step 3 : GitHub ActionsでCI/CD構築 (任意)

jobs:
pam_pipeline:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Run Ansible Playbook
run: ansible-playbook -i inventory setup-pam.yml

TerraformとAnsibleの処理をGitHub Actionsに組み込むことで、CI/CD化することで、 インフラ構成 + PAMの自動管理 が実現できます。


🔹 まとめ

TerraformでVaultのポリシーを定義

AnsibleでSecretを取得して変数化

GitHub ActionsでCI/CDに組み込み

この三問のフローにより、特権アクセスの安全性 + DevOps性を高深度で両立させる自動化構築が成立します。


⬆️ 次回予告

次回は、この構成を 本番システムに実践適用する際のテスト解析・CI/CD向けパイプライン組み込みテクニック を詳細解説します。

→ 「GitHub Actions + Ansibleで実現する、現場で使えるPAMステートパイプライン」


ご感想や質問は、どんどん歓迎です。 読んで頂き最後まで本当にありがとうございました。

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?