Raccogli i log IAM AWS

Parser Version: 1.0

Supportato in:

Questo documento spiega come importare i dati di configurazione di AWS Identity and Access Management (IAM) in Google Security Operations utilizzando il feed API di terze parti.

Il parser AWS IAM trasforma i dati delle entità IAM (utenti, gruppi, ruoli e policy) nel modello UDM (Unified Data Model) strutturato, estraendo campi come dettagli utente, informazioni sui ruoli, autorizzazioni e timestamp per un'analisi della sicurezza coerente.

Prima di iniziare

Assicurati di soddisfare i seguenti prerequisiti:

  • Un'istanza Google SecOps
  • Accesso privilegiato alla console AWS
  • Autorizzazioni per creare utenti e policy IAM

Ottieni gli intervalli IP di Google SecOps

  1. Vai a Impostazioni SIEM > Feed.
  2. Fai clic su Aggiungi nuovo feed.
  3. Prendi nota degli intervalli IP visualizzati nella parte superiore della pagina.
    • In alternativa, recupera gli intervalli IP in modo programmatico utilizzando l'API Feed Management.

Crea un utente IAM con le autorizzazioni richieste

CRITICO:per consentire a Google SecOps di recuperare i dati IAM AWS utilizzando l'API, devi creare un utente IAM con le autorizzazioni in lettura appropriate.

  1. Crea un utente seguendo le istruzioni riportate in questa guida: Creazione di un utente IAM.
  2. Seleziona l'utente creato.
  3. Seleziona la scheda Credenziali di sicurezza.
  4. Fai clic su Crea chiave di accesso nella sezione Chiavi di accesso.
  5. Seleziona Servizio di terze parti come Caso d'uso.
  6. Fai clic su Avanti.
    • (Facoltativo) Aggiungi un tag di descrizione.
  7. Fai clic su Crea chiave di accesso.
  8. Fai clic su Scarica file .csv per salvare l'ID chiave di accesso e la chiave di accesso segreta per riferimento futuro.
  9. Fai clic su Fine.
  10. Seleziona la scheda Autorizzazioni.
  11. Fai clic su Aggiungi autorizzazioni nella sezione Criteri di autorizzazione.
  12. Seleziona Aggiungi autorizzazioni.
  13. Seleziona Allega direttamente le norme.
  14. Cerca IAMReadOnlyAccess (policy gestita da AWS).
  15. Seleziona la policy.
  16. Fai clic su Avanti.
  17. Fai clic su Aggiungi autorizzazioni.

Importante:la policy IAMReadOnlyAccess include tutte le autorizzazioni richieste:

  • iam:GetUser
  • iam:ListUsers
  • iam:GetGroup
  • iam:ListGroups
  • iam:GetPolicy
  • iam:ListPolicies
  • iam:GetRole
  • iam:ListRoles
  • iam:ListAttachedUserPolicies
  • iam:ListAttachedGroupPolicies
  • iam:ListAttachedRolePolicies
  • iam:GetAccountSummary

Opzione B: crea una policy personalizzata (privilegio minimo)

Se la tua policy di sicurezza richiede autorizzazioni minime anziché la policy gestita:

  1. Nella console AWS, vai a IAM > Policies > Create policy > scheda JSON.
  2. Incolla la seguente policy:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": [
            "iam:GetUser",
            "iam:ListUsers",
            "iam:GetGroup",
            "iam:ListGroups",
            "iam:GetPolicy",
            "iam:ListPolicies",
            "iam:GetRole",
            "iam:ListRoles",
            "iam:ListAttachedUserPolicies",
            "iam:ListAttachedGroupPolicies",
            "iam:ListAttachedRolePolicies",
            "iam:GetAccountSummary"
          ],
          "Resource": "*"
        }
      ]
    }
    
  3. Fai clic su Avanti.

  4. Assegna al criterio il nome chronicle-iam-api-read-policy.

  5. Fai clic su Crea policy.

  6. Crea un utente seguendo le istruzioni riportate in questa guida: Creazione di un utente IAM.

  7. Seleziona l'utente creato.

  8. Seleziona la scheda Credenziali di sicurezza.

  9. Fai clic su Crea chiave di accesso nella sezione Chiavi di accesso.

  10. Seleziona Servizio di terze parti come Caso d'uso.

  11. Fai clic su Avanti.

    • (Facoltativo) Aggiungi un tag di descrizione.
  12. Fai clic su Crea chiave di accesso.

  13. Fai clic su Scarica file .csv per salvare l'ID chiave di accesso e la chiave di accesso segreta per riferimento futuro.

  14. Fai clic su Fine.

  15. Seleziona la scheda Autorizzazioni.

  16. Fai clic su Aggiungi autorizzazioni nella sezione Criteri di autorizzazione.

  17. Seleziona Aggiungi autorizzazioni.

  18. Seleziona Allega direttamente le norme.

  19. Cerca e seleziona chronicle-iam-api-read-policy.

  20. Fai clic su Avanti.

  21. Fai clic su Aggiungi autorizzazioni.

Configura un feed in Google SecOps per importare i dati di configurazione IAM

Il feed AWS IAM raccoglie un elenco di entità IAM per feed, selezionato dal campo Tipo di API (Utenti, Ruoli o Gruppi). Per raccogliere tutte le entità IAM, crea un feed per ogni tipo di API, tutti utilizzando il tipo di log AWS IAM.

  1. Vai a Hub dei contenuti > Pacchetti di contenuti > Inizia.
  2. Fai clic sul pacchetto Amazon Cloud Platform.
  3. Trova il tipo di log AWS IAM nell'elenco.
  4. Seleziona API di terze parti dal menu a discesa Tipo di origine.
  5. Fornisci i seguenti dettagli di configurazione:
    • Nome utente: l'ID chiave di accesso dell'utente IAM creato in precedenza.
    • Secret: la chiave di accesso segreta dell'utente IAM creato in precedenza.
    • Tipo di API: seleziona l'elenco di entità IAM da raccogliere: Utenti, Ruoli o Gruppi.
    • Nome feed: un valore precompilato che identifica il feed (ad esempio, AWS IAM Users).
    • Spazio dei nomi degli asset: lo spazio dei nomi associato al feed.
    • Etichette di importazione: etichette applicate a tutti gli eventi di questo feed.
  6. Fai clic su Crea feed.

Per ulteriori informazioni sulla configurazione di più feed per diversi tipi di log all'interno di questa famiglia di prodotti, consulta Configura i feed per prodotto.

Utilizzo delle impostazioni SIEM

  1. Vai a Impostazioni SIEM > Feed.
  2. Fai clic su Aggiungi nuovo feed.
  3. Nella pagina successiva, fai clic su Configura un singolo feed.
  4. Nel campo Nome feed, inserisci un nome per il feed (ad esempio, AWS IAM API Configuration).
  5. Seleziona API di terze parti come Tipo di origine.
  6. Seleziona AWS IAM come Tipo di log.
  7. Fai clic su Avanti.
  8. Specifica i valori per i seguenti parametri di input:
    • Nome utente: l'ID chiave di accesso dell'utente IAM creato in precedenza.
    • Secret: la chiave di accesso segreta dell'utente IAM creato in precedenza.
    • Tipo di API: seleziona l'elenco delle entità IAM da raccogliere: Utenti, Ruoli o Gruppi.
    • Spazio dei nomi dell'asset: lo spazio dei nomi dell'asset.
    • Etichette di importazione: l'etichetta da applicare agli eventi di questo feed.
  9. Fai clic su Avanti.
  10. Controlla la nuova configurazione del feed nella schermata Finalizza e poi fai clic su Invia.

Tabella di mappatura UDM

Campo log Mappatura UDM Logica
Group.CreateDate entity.group.attribute.creation_time Analizzato come ISO8601
Group.Path entity.group.attribute.labels.value Mappato direttamente
IsTruncated entity.group.attribute.labels.value Mappato direttamente
Marker entity.group.attribute.labels.value Mappato direttamente
Group.GroupName entity.group.email_addresses Unita
Group.GroupName entity.group.group_display_name Mappato direttamente
Group.GroupID entity.group.product_object_id Mappato direttamente
RoleLastUsed.Region entity.location.name Mappato direttamente
CreateDate entity.resource.attribute.creation_time Analizzato come ISO8601
MaxSessionDuration entity.resource.attribute.labels.value Mappato direttamente
Path entity.resource.attribute.labels.value Mappato direttamente
RoleLastUsed.LastUsedDate entity.resource.attribute.labels.value Mappato direttamente
AssumeRolePolicyDocument entity.resource.attribute.permissions.name Mappato direttamente
Description entity.resource.attribute.roles.description Mappato direttamente
RoleName entity.resource.attribute.roles.name Mappato direttamente
Arn entity.resource.name Mappato direttamente
Group.Arn entity.resource.name Mappato direttamente
RoleID entity.resource.product_object_id Mappato direttamente
CreateDate entity.user.attribute.creation_time Analizzato come ISO8601
PasswordLastUsed entity.user.last_login_time Analizzato come ISO8601
UserID entity.user.product_object_id Mappato direttamente
UserName entity.user.userid Mappato direttamente
PermissionsBoundary.PermissionsBoundaryArn relations.entity.resource.attribute.labels.value Mappato direttamente
PermissionsBoundary.PermissionsBoundaryType relations.entity.resource.attribute.labels.value Mappato direttamente
user.PermissionsBoundary.PermissionsBoundaryArn relations.entity.resource.attribute.labels.value Mappato direttamente
user.PermissionsBoundary.PermissionsBoundaryType relations.entity.resource.attribute.labels.value Mappato direttamente
user.Arn relations.entity.resource.name Mappato direttamente
user.CreateDate relations.entity.user.attribute.creation_time Analizzato come ISO8601
tag.Key relations.entity.user.attribute.labels.key Mappato direttamente
Path relations.entity.user.attribute.labels.value Mappato direttamente
tag.Value relations.entity.user.attribute.labels.value Mappato direttamente
user.Path relations.entity.user.attribute.labels.value Mappato direttamente
user.PasswordLastUsed relations.entity.user.last_login_time Analizzato come ISO8601
user.UserID relations.entity.user.product_object_id Mappato direttamente
user.UserName relations.entity.user.userid Mappato direttamente
N/D entity.group.attribute.labels.key Costante: is_truncated
N/D entity.resource.attribute.cloud.environment Costante: AMAZON_WEB_SERVICES
N/D entity.resource.attribute.labels.key Costante: max_session_duration
N/D entity.resource.resource_subtype Costante: User
N/D entity.resource.resource_type Costante: ACCESS_POLICY
N/D metadata.entity_type Costante: USER
N/D metadata.product_name Costante: AWS IAM
N/D metadata.vendor_name Costante: AWS
N/D relations.direction Costante: UNIDIRECTIONAL
N/D relations.entity.resource.attribute.labels.key Costante: permissions_boundary_arn
N/D relations.entity.resource.resource_subtype Costante: User
N/D relations.entity.user.attribute.labels.key Costante: path
N/D relations.entity_type Costante: USER
N/D relations.relationship Costante: MEMBER

Log delle modifiche

Visualizza il log delle modifiche per questo parser

Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.