View a markdown version of this page

AWSSupport-ValidateFSxWindowsADConfig - AWS Systems Manager Riferimento all'Automation Runbook

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

AWSSupport-ValidateFSxWindowsADConfig

Descrizione

Il AWSSupport-ValidateFSxWindowsADConfig runbook viene utilizzato per convalidare la configurazione Active Directory (AD) autogestita di un Amazon FSx for Windows File Server

Come funziona?

Il runbook AWSSupport-ValidateFSxWindowsADConfig esegue lo script di convalida di Amazon FSx sull'istanza temporanea di Amazon Elastic Compute Cloud (Amazon EC2) Windows lanciata dal runbook nella sottorete Amazon FSx. Lo script esegue più controlli per convalidare la connettività di rete ai AD/DNS server autogestiti e le autorizzazioni dell'account del servizio Amazon FSx. Il runbook può convalidare un Amazon FSx for Windows File Server fallito o configurato in modo errato o creare un nuovo Amazon FSx for Windows File Server con AD autogestito.

Per impostazione predefinita, il runbook crea l'istanza Amazon EC2 Windows, il gruppo di sicurezza AWS Systems Manager per l'accesso (SSM) AWS Identity and Access Management , il ruolo (IAM) e la policy utilizzando la sottorete CloudFormation Amazon FSx. Se desideri eseguire lo script su un'istanza Amazon EC2 esistente, fornisci l'ID nel parametro. InstanceId In caso di esecuzione riuscita, elimina le CloudFormation risorse. Tuttavia, per conservare le risorse, impostate il RetainCloudFormationStack parametro sutrue.

Il CloudFormation modello crea un ruolo IAM per tuo conto con le autorizzazioni necessarie per il collegamento all'istanza Amazon EC2 per eseguire lo script di convalida Amazon FSx. Per specificare un profilo di istanza IAM esistente per l'istanza temporanea, utilizza il parametro. InstanceProfileName Il ruolo IAM associato deve contenere le seguenti autorizzazioni:

  • ec2:DescribeSubnetse ec2:DescribeVpcs autorizzazioni e Amazon Managed PolicyAmazonSSMManagedInstanceCore.

  • Autorizzazioni per ottenere il nome utente e la password dell'account del servizio Amazon FSx da Systems Manager GetSecretValue chiamando l'API.

  • Autorizzazioni per inserire l'oggetto nel bucket Amazon Simple Storage Service (Amazon S3) per l'output dello script.

Prerequisiti

La sottorete in cui viene creata l'istanza Amazon EC2 temporanea (o l'istanza esistente fornita nel InstanceId parametro) deve consentire l'accesso agli AWS Systems Manager endpoint e Amazon S3 per eseguire AmazonFSxADValidation lo script utilizzando SSM Run Command. Gestione dei segreti AWS

Gestione dei segreti AWS configurazione

Lo script di convalida si connette al dominio Microsoft AD recuperando il nome utente e la password dell'account del servizio Amazon FSx con una chiamata di runtime a Secrets Manager. Segui la procedura descritta in Creare un Gestione dei segreti AWS segreto per creare un nuovo segreto di Secrets Manager. Assicurati che il nome utente e la password siano memorizzati utilizzando una key/value coppia nel formato{"username":"EXAMPLE-USER","password":"EXAMPLE-PASSWORD"}". Gestione dei segreti AWS Per informazioni sulla protezione dell'accesso ai segreti, consulta Autenticazione e controllo degli accessi.

Per ulteriori informazioni sullo strumento, consulta i README.md file TROUBLESHOOTING.md e contenuti nel AmazonFSxADValidationfile.

Esecuzione del runbook

Esegui il runbook con i parametri Amazon FSx ID o AD. Di seguito è riportato il flusso di lavoro del runbook:

  • Ottiene i parametri dall'ID Amazon FSx o utilizza i parametri AD di input.

  • Crea l'istanza Windows di convalida temporanea di Amazon EC2 sulla sottorete Amazon FSx, utilizzando un gruppo di sicurezza per l'accesso SSM, il ruolo e la policy IAM (condizionale). CloudFormation Se il InstanceId parametro è specificato, viene utilizzato.

  • Scarica ed esegue lo script di convalida sull'istanza Amazon EC2 di destinazione nella sottorete primaria Amazon FSx.

  • Fornisce il codice dei risultati della convalida AD nell'output dell'automazione. Inoltre, l'output completo dello script viene caricato nel bucket Amazon S3.

Esegui questa automazione (console)

Tipo di documento

Automazione

Proprietario

Amazon

Piattaforme

Windows

Parametri

Autorizzazioni IAM richieste

Il AutomationAssumeRole parametro richiede le seguenti azioni per utilizzare correttamente il runbook.

  • cloudformation:CreateStack

  • cloudformation:DeleteStack

  • cloudformation:DescribeStacks

  • cloudformation:DescribeStackResources

  • cloudformation:DescribeStackEvents

  • ec2:CreateTags

  • ec2:RunInstances

  • ec2:TerminateInstances

  • ec2:CreateLaunchTemplate

  • ec2:DeleteLaunchTemplate

  • ec2:DescribeSubnets

  • ec2:DescribeSecurityGroups

  • ec2:DescribeImages

  • ec2:DescribeInstances

  • ec2:DescribeLaunchTemplates

  • ec2:DescribeLaunchTemplateVersions

  • ec2:CreateSecurityGroup

  • ec2:DeleteSecurityGroup

  • ec2:RevokeSecurityGroupEgress

  • ec2:AuthorizeSecurityGroupEgress

  • iam:CreateRole

  • iam:CreateInstanceProfile

  • iam:GetInstanceProfile

  • iam:getRolePolicy

  • iam:DeleteRole

  • iam:DeleteInstanceProfile

  • iam:AddRoleToInstanceProfile

  • iam:RemoveRoleFromInstanceProfile

  • iam:AttachRolePolicy

  • iam:DetachRolePolicy

  • iam:PutRolePolicy

  • iam:DeleteRolePolicy

  • iam:GetRole

  • iam:PassRole

  • ssm:SendCommand

  • ssm:StartAutomationExecution

  • ssm:DescribeInstanceInformation

  • ssm:DescribeAutomationExecutions

  • ssm:GetDocument

  • ssm:GetAutomationExecution

  • ssm:DescribeAutomationStepExecutions

  • ssm:ListCommandInvocations

  • ssm:GetParameters

  • ssm:ListCommands

  • ssm:GetCommandInvocation

  • fsx:DescribeFileSystems

  • ds:DescribeDirectories

  • s3:GetEncryptionConfiguration

  • s3:GetBucketPublicAccessBlock

  • s3:GetAccountPublicAccessBlock

  • s3:GetBucketPolicyStatus

  • s3:GetBucketAcl

  • s3:GetBucketLocation

Esempio di politica IAM per l'automazione Assume Role

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AllowDescribe", "Effect": "Allow", "Action": [ "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribeImages", "ec2:DescribeInstances", "ec2:DescribeLaunchTemplates", "ec2:DescribeLaunchTemplateVersions", "ssm:DescribeInstanceInformation", "ssm:DescribeAutomationExecutions", "ssm:DescribeAutomationStepExecutions", "fsx:DescribeFileSystems", "ds:DescribeDirectories" ], "Resource": "*" }, { "Sid": "CloudFormation", "Effect": "Allow", "Action": [ "cloudformation:DescribeStacks", "cloudformation:DescribeStackResources", "cloudformation:DescribeStackEvents", "cloudformation:CreateStack", "cloudformation:DeleteStack" ], "Resource": "arn:*:cloudformation:*:*:stack/AWSSupport-ValidateFSxWindowsADConfig-*" }, { "Sid": "AllowCreateLaunchTemplate", "Effect": "Allow", "Action": [ "ec2:CreateLaunchTemplate", "ec2:CreateTags" ], "Resource": [ "arn:aws:ec2:*:*:launch-template/*" ] }, { "Sid": "AllowEC2RunInstances", "Effect": "Allow", "Action": [ "ec2:RunInstances", "ec2:CreateTags" ], "Resource": [ "arn:aws:ec2:*::image/*", "arn:aws:ec2:*::snapshot/*", "arn:aws:ec2:*:*:subnet/*", "arn:aws:ec2:*:*:network-interface/*", "arn:aws:ec2:*:*:security-group/*", "arn:aws:ec2:*:*:key-pair/*", "arn:aws:ec2:*:*:launch-template/*" ] }, { "Sid": "AllowEC2RunInstancesWithTags", "Effect": "Allow", "Action": [ "ec2:RunInstances", "ec2:CreateTags" ], "Resource": [ "arn:aws:ec2:*:*:instance/*", "arn:aws:ec2:*:*:volume/*" ] }, { "Sid": "EC2SecurityGroup", "Effect": "Allow", "Action": [ "ec2:CreateSecurityGroup", "ec2:RevokeSecurityGroupEgress", "ec2:AuthorizeSecurityGroupEgress", "ec2:CreateTags" ], "Resource": [ "arn:*:ec2:*:*:security-group/*", "arn:*:ec2:*:*:vpc/*" ] }, { "Sid": "EC2Remove", "Effect": "Allow", "Action": [ "ec2:TerminateInstances", "ec2:DeleteLaunchTemplate", "ec2:DeleteSecurityGroup" ], "Resource": [ "arn:aws:ec2:*:*:instance/*", "arn:aws:ec2:*:*:launch-template/*", "arn:*:ec2:*:*:security-group/*" ] }, { "Sid": "IAMInstanceProfile", "Effect": "Allow", "Action": [ "iam:CreateInstanceProfile", "iam:DeleteInstanceProfile", "iam:GetInstanceProfile", "iam:AddRoleToInstanceProfile", "iam:RemoveRoleFromInstanceProfile" ], "Resource": "arn:*:iam::*:instance-profile/*" }, { "Sid": "IAM", "Effect": "Allow", "Action": [ "iam:CreateRole", "iam:DeleteRole", "iam:AttachRolePolicy", "iam:DetachRolePolicy", "iam:getRolePolicy", "iam:PutRolePolicy", "iam:DeleteRolePolicy", "iam:GetRole", "iam:TagRole" ], "Resource": "arn:*:iam::*:role/*" }, { "Sid": "SSM", "Effect": "Allow", "Action": [ "ssm:StartAutomationExecution", "ssm:GetDocument", "ssm:GetAutomationExecution", "ssm:ListCommandInvocations", "ssm:GetParameters", "ssm:ListCommands", "ssm:GetCommandInvocation" ], "Resource": "*" }, { "Sid": "SSMSendCommand", "Effect": "Allow", "Action": [ "ssm:SendCommand" ], "Resource": "arn:aws:ssm:*:*:document/AWS-RunPowerShellScript" }, { "Sid": "SSMSendCommandOnlyFsxInstance", "Effect": "Allow", "Action": [ "ssm:SendCommand" ], "Resource": [ "arn:aws:ec2:*:*:instance/*" ], "Condition": { "StringLike": { "ssm:resourceTag/CreatedBy": [ "AWSSupport-ValidateFSxWindowsADConfig" ] } } }, { "Sid": "AllowPassRoleToEC2", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:*:iam::*:role/AWSSupport-ValidateFSxWindowsADConfig-*", "Condition": { "StringEquals": { "iam:PassedToService": [ "ec2.amazonaws.com" ] } } }, { "Effect": "Allow", "Action": [ "s3:GetEncryptionConfiguration", "s3:GetBucketPublicAccessBlock", "s3:GetAccountPublicAccessBlock", "s3:GetBucketPolicyStatus", "s3:GetBucketAcl", "s3:GetBucketLocation" ], "Resource": "*" } ] }

Istruzioni

Segui questi passaggi per configurare l'automazione:

  1. Accedere AWSSupport-ValidateFSxWindowsADConfiga Systems Manager nella sezione Documenti.

  2. Seleziona Execute automation (Esegui automazione).

  3. Per convalidare AD autogestito con un Amazon FSx esistente fallito o configurato in modo errato, inserisci i seguenti parametri:

    • AutomationAssumeRole (Facoltativo):

      L'Amazon Resource Name (ARN) del ruolo AWS Identity and Access Management (IAM) che consente a Systems Manager Automation di eseguire le azioni per tuo conto. Se non viene specificato alcun ruolo, Systems Manager Automation utilizza le autorizzazioni dell'utente che avvia questo runbook.

    • FSxId (Condizionale):

      L'ID del file server Amazon FSx per Windows. Ciò è necessario per convalidare Amazon FSx esistente con errori o configurazioni errate.

    • SecretArn (Obbligatorio):

      L'ARN del segreto di Secrets Manager contenente il nome utente e la password dell'account del servizio Amazon FSx. Assicurati che il nome utente e la password siano memorizzati utilizzando una key/value coppia nel formato. {"username":"EXAMPLE-USER","password":"EXAMPLE-PASSWORD"} Lo CloudFormation stack crea l'istanza di convalida con le autorizzazioni per l'esecuzione su GetSecretValue questo ARN.

    • FSxSecurityGroupId (Obbligatorio):

      L'ID del gruppo di sicurezza per Amazon FSx for Windows File Server.

    • BucketName (Obbligatorio):

      Il bucket Amazon S3 su cui caricare i risultati della convalida. Assicurati che il bucket sia configurato con la crittografia lato server (SSE) e che la policy del bucket non conceda read/write autorizzazioni non necessarie a parti che non hanno bisogno di accedere ai log. Assicurati inoltre che l'istanza Windows di Amazon EC2 disponga dell'accesso necessario al bucket Amazon S3.

    I parametri di input si formano con campi come ID, IAM role, bucket S3, ARN segreto e configurazione FSx.
  4. Per convalidare la configurazione AD autogestita per una nuova creazione di Amazon FSx, inserisci i seguenti parametri:

    • AutomationAssumeRole (Facoltativo):

      L'Amazon Resource Name (ARN) del ruolo AWS Identity and Access Management (IAM) che consente a Systems Manager Automation di eseguire le azioni per tuo conto. Se non viene specificato alcun ruolo, Systems Manager Automation utilizza le autorizzazioni dell'utente che avvia questo runbook.

    • SecretArn (Obbligatorio):

      L'ARN del segreto di Secrets Manager contenente il nome utente e la password dell'account del servizio Amazon FSx. Assicurati che il nome utente e la password siano memorizzati utilizzando una key/value coppia nel formato. {"username":"EXAMPLE-USER","password":"EXAMPLE-PASSWORD"} Lo CloudFormation stack crea l'istanza di convalida con le autorizzazioni per l'esecuzione su GetSecretValue questo ARN.

    • FSxSecurityGroupId (Obbligatorio):

      L'ID del gruppo di sicurezza per Amazon FSx for Windows File Server.

    • BucketName (Obbligatorio):

      Il bucket Amazon S3 su cui caricare i risultati della convalida. Assicurati che il bucket sia configurato con la crittografia lato server (SSE) e che la policy del bucket non conceda read/write autorizzazioni non necessarie a parti che non hanno bisogno di accedere ai log. Assicurati inoltre che l'istanza Windows di Amazon EC2 disponga dell'accesso necessario al bucket Amazon S3.

    • FSxPreferredSubnetId(Condizionale):

      La sottorete preferita di Amazon FSx for Windows File Server.

    • DomainName (Condizionale):

      Il nome di dominio completo del tuo dominio Microsoft AD autogestito.

    • DnsIpAddresses (Condizionale):

      Un elenco di un massimo di due indirizzi IP del server DNS o del controller di dominio nel dominio AD autogestito. Per un massimo di due IP, inseriscili separati da una virgola.

    • FSxAdminsGroup (Condizionale):

      Il gruppo di amministratori di file system delegati di Amazon FSx for Windows File Server. Per impostazione predefinita, questo è Domain Admins.

    • FSxOrganizationalUnit(Condizionale):

      L'unità organizzativa (OU) all'interno della quale si desidera inserire il file system. Fornire il nome del percorso distinto dell'unità organizzativa. Esempio: OU=org,DC=example,DC=com.

    Parametri di configurazione per Amazon FSx includere nome di dominio, ID di sottorete e gruppi di amministratori.
  5. Seleziona Esegui.

  6. L'automazione viene avviata.

  7. Il documento esegue le seguenti operazioni:

    • CheckBucketPublicStatus(AWS: ExecuteScript):

      Verifica se il bucket Amazon S3 di destinazione concede potenzialmente l'accesso pubblico in lettura e and/or scrittura ai suoi oggetti.

    • BranchOnInputParameters(aws:branch):

      Succursali sui parametri di input forniti come Amazon FSx ID o i parametri Amazon FSx.

    • AssertFileSystemTypeIsWindows(aws:assert): AwsResourceProperty

      Se viene fornito l'ID Amazon FSx, verifica che il tipo di file system sia Amazon FSx for Windows File Server.

    • GetValidationInputs(AWS: ExecuteScript):

      Restituisce la configurazione Microsoft AD autogestita richiesta dal CloudFormation modello per creare l'istanza Amazon EC2.

    • BranchOnInstanceId (aws:branch):

      Rami sull'ingresso fornito. InstanceId Se InstanceId fornito, lo script di convalida viene eseguito sull'istanza Amazon EC2 di destinazione dall'automazione. step:RunValidationScript

    • CreateEC2InstanceStack(AWS: CreateStack):

      Crea l'istanza Amazon EC2 nella sottorete preferita utilizzando CloudFormation dove verrà eseguito lo AmazonFSxADValidation strumento

    • DescribeStackResources(aws:execute): AwsApi

      Descrive lo CloudFormation stack per ottenere l'ID temporaneo dell'istanza Amazon EC2.

    • WaitForEC2InstanceToBeManaged(aws:wait): ForAwsResourceProperty

      Attende che l'istanza Amazon EC2 sia gestita da Systems Manager per eseguire lo script di convalida utilizzando SSM Run Command.

    • GetAmazonFSxADValidationAttachment(aws:execute): AwsApi

      Ottiene l'URL AmazonFSxADValidation dello strumento dagli allegati del runbook.

    • RunValidationScript(AWS: runCommand):

      Esegue lo AmazonFSxADValidation strumento sull'istanza temporanea di Amazon EC2 e archivia il risultato nel bucket Amazon S3 specificato nel parametro. BucketName

    • DescribeErrorsFromStackEvents(AWS: ExecuteScript):

      Descrive gli eventi CloudFormation dello stack se i runbook non riescono a creare lo stack.

    • BranchOnRetainCloudFormationStack(aws:branch):

      Rami RetainCloudFormationStack e InstanceId parametri per determinare se lo CloudFormation stack deve essere eliminato.

    • DeleteCloudFormationStack(AWS: deleteStack):

      Elimina lo stack. CloudFormation

  8. Al termine, consulta la sezione Output per i risultati dell'esecuzione:

    Sezione Outputs che mostra i risultati dello script di convalida con un errore. InvalidCredentials

    Il runbook caricherà i risultati dell'esecuzione dello script di convalida nel bucket Amazon S3.

Riferimenti

Systems Manager Automation

AWS documentazione di servizio