cc3a28f192
- docker-socket-permissions.md: Docker socket technical specs and access control - linux-users-groups.md: Linux user management reference with commands - iam-parallels.md: Quick reference table for IAM parallelism - Pure reference material with tables and specifications
3.5 KiB
3.5 KiB
Reference: Parallelismi Docker e AWS IAM
Tabella di riferimento rapido per i parallelismi tra concetti Docker/Linux e AWS IAM.
Tabella Parallelismi
| Concetto Locale | AWS IAM Equivalente | Descrizione |
|---|---|---|
Utente Linux (student1) |
IAM User | Identità che può autenticarsi |
Gruppo Linux (docker) |
IAM Group | Collezione di utenti con stessi permessi |
| Permessi file/socket | IAM Policy | Regole che definiscono cosa è permesso |
/var/run/docker.sock |
Service Endpoint | Risorsa protetta da controlli accesso |
sudo elevation |
IAM Role Assumption | Temporanea elevazione privilegi |
usermod -aG docker |
AttachUserPolicy |
Assegna permessi a utente |
Appartenenza gruppo docker |
Policy attachment | Permessi attivi per utente |
Comandi a Confronto
Creazione Utente
| Operazione Locale | Comando AWS |
|---|---|
sudo useradd -m user |
aws iam create-user --user-name user |
sudo passwd user |
aws iam create-login-profile --user-name user --password Pass123! |
Gestione Permessi
| Operazione Locale | Comando AWS |
|---|---|
sudo usermod -aG docker user |
aws iam attach-user-policy --user-name user --policy-arn arn:aws:iam::aws:policy/PowerUserAccess |
sudo gpasswd -d user docker |
aws iam detach-user-policy --user-name user --policy-arn arn:aws:iam::aws:policy/PowerUserAccess |
Verifica Permessi
| Operazione Locale | Comando AWS |
|---|---|
groups user |
aws iam list-attached-user-policies --user-name user |
id user |
aws iam get-user --user-name user |
sudo -u user docker ps |
aws sts get-caller-identity |
Elevazione Privilegi
| Operazione Locale | Comando AWS |
|---|---|
sudo command |
Assumere IAM Role |
su - root |
aws sts assume-role |
Differenze Chiave
| Aspetto | Locale | Cloud AWS |
|---|---|---|
| Autenticazione | Password, SSH key | Access key, Secret key, Session token |
| Autorizzazione | Gruppi Linux, permessi file | IAM Policies, JSON document |
| Scope | Singolo host | Account AWS intero |
| Audit | last, /var/log/auth.log |
CloudTrail |
| MFA | Non disponibile | Disponibile |
Modelli di Policy
Modello Allow
Locale:
# Utente nel gruppo docker puo accedere al socket
sudo usermod -aG docker utente
AWS:
{
"Effect": "Allow",
"Action": "docker:*",
"Resource": "*"
}
Modello Deny
Locale:
# Utente NON nel gruppo docker non puo accedere
# (default deny)
AWS:
{
"Effect": "Deny",
"Action": "docker:*",
"Resource": "*"
}
Best Practices Comuni
| Best Practice | Locale | Cloud |
|---|---|---|
| Minimo privilegio | Utenti non-root | IAM Policies restrittive |
| Separazione doveri | Gruppi distinti | Gruppi IAM distinti |
| Audit logging | auth.log | CloudTrail |
| Rotazione credenziali | chage |
Rotate access keys |
Comandi Utili
# Verifica membri gruppo docker
getent group docker
# Simulazione AWS: lista politiche IAM
aws iam list-attached-user-policies --user-name user
# Verifica permessi socket
ls -l /var/run/docker.sock
# Simulazione AWS: simula accesso AWS
aws sts get-caller-identity