GitHub: ho dimenticato gli Actions secrets, come li recupero?

| |

Tengo traccia degli Actions secrets di GitHub all’interno di uno dei miei database 1Password, eppure uno era sfuggito al mio salvataggio, evidentemente ritenuto “poco utile“. Per questo motivo ho voluto capire se potessi portare fuori da GitHub quel valore, il tutto senza però scriverlo da nessuna parte per evitare che ne rimanesse traccia all’interno del repository. Una via l’ho trovata e l’ho sperimentata con successo, serve semplicemente mettere in piedi un ulteriore file YAML (quindi una GitHub Action) da far girare, connettendoti poi a una shell Linux dove poter leggere ciò che ti serve. Ti spiego rapidamente come fare.

GitHub Actions: ritenta, sarai più fortunato

Amnesia.yml

L'articolo è stato aggiornato

3/12/24: La GitHub Action mi è tornata utile ancora una volta. Ho quindi deciso di aggiornare il codice qui di seguito (era rimasto indietro sulle versioni delle azioni prese dal Marketplace di GitHub.

L’ho chiamato così il file dell’azione GitHub che ho messo in piedi e fatto girare. Il codice è tutto frutto del lavoro di Danny Ben Shitrit che mi sono limitato semplicemente ad adattare alla mia specifica esigenza. Qui di seguito trovi il codice, subito dopo ti spiego cosa dovrai modificare tu nel tuo repository GitHub per arrivare allo stesso risultato:

name: Amnesia
on: 
  workflow_dispatch:

jobs:
  debug:
    name: Debug
    runs-on: ubuntu-latest

    steps:
    - name: Check out code
      uses: actions/checkout@v4.2.2

    - name: Set up secret file
      env:
        SECRET_TEST: ${{ secrets.SECRET_TEST}}
      run: |
        echo $SECRET_TEST >> secrets.txt

    - name: Run tmate
      uses: mxschmitt/action-tmate@v3.19

Il codice qui sopra si baserà su un unico valore segreto da recuperare (SECRET_TEST):

GitHub: ho dimenticato gli Actions secrets, come li recupero?

Inutile dire che ti basterà duplicare la riga che riporta quel parametro al suo interno per poter portare fuori ulteriori chiavi segrete di cui necessiti. Lo script YAML fa uso di tmate, un’azione che si propone come strumento di debug per le tue GitHub Actions via SSH, il funzionamento è tanto semplice quanto geniale e viene descritto all’interno della pagina web ufficiale che trovi all’indirizzo mxschmitt.github.io/action-tmate.

Facendo girare Amnesia manualmente, ti ritroverai a un certo punto a vedere un indirizzo al quale ti potrai connettere via SSH (c’è anche una versione accessibile via web che però reputo meno comoda):

GitHub: ho dimenticato gli Actions secrets, come li recupero? 1

Collegati (Terminale su Linux o macOS, Putty su Windows), premi su tastiera CTRL + C per uscire dalla finestra di Welcome (dove vengono raccolte alcune informazioni sulla sessione) e dai una sbirciata al file secrets.txt che hai creato all’interno dell’azione GitHub:

GitHub: ho dimenticato gli Actions secrets, come li recupero? 2 GitHub: ho dimenticato gli Actions secrets, come li recupero? 3

Uno strumento che non conoscevo ma che è davvero ben fatto e alla portata di chiunque per poter tornare in possesso di una chiave segreta non tenuta correttamente da parte! :-)

#StaySafe


Ringraziamenti: stackoverflow.com/a/63009069/2220346

Correzioni, suggerimenti? Lascia un commento nell'apposita area qui di seguito o contattami privatamente.
Ti è piaciuto l'articolo? Offrimi un caffè! ☕ :-)

L'articolo potrebbe non essere aggiornato

Questo post è stato scritto più di 5 mesi fa, potrebbe non essere aggiornato. Per qualsiasi dubbio ti invito a lasciare un commento per chiedere ulteriori informazioni! :-)

Condividi l'articolo con i tuoi contatti:
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

0 Commenti
Oldest
Newest Most Voted
Inline Feedbacks
View all comments