View a markdown version of this page

AWSSupport-ValidateFSxWindowsADConfig - AWS Systems Manager Riferimento al runbook dell’automazione

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 Amazon FSx sull'istanza temporanea di Amazon Elastic Compute Cloud (Amazon EC2) di Windows lanciata dal runbook sulla sottorete Amazon FSx. Lo script esegue più controlli per convalidare la connettività di rete ai server autogestiti e le AD/DNS autorizzazioni dell'account di servizio Amazon FSx. Il runbook può convalidare un Amazon FSx for Windows File Server non riuscito o non configurato correttamente o creare un nuovo Amazon FSx for Windows File Server con AD autogestito.

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

Il CloudFormation modello crea un ruolo IAM per tuo conto con le autorizzazioni necessarie da collegare 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 Policy. AmazonSSMManagedInstanceCore

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

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

Prerequisiti

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

AWS Secrets Manager configurazione

Lo script di convalida si connette al dominio Microsoft AD recuperando il nome utente e la password dell'account di servizio Amazon FSx con una chiamata in fase di esecuzione a Secrets Manager. Segui i passaggi descritti in Creare un AWS Secrets Manager 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"}". Per informazioni sulla protezione dell'accesso ai segreti, consulta Autenticazione e controllo degli accessi. AWS Secrets Manager

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

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 Amazon EC2 Windows di convalida temporanea sulla sottorete Amazon FSx, sul gruppo di sicurezza per l'accesso SSM, sul ruolo e sulla policy IAM (condizionali) utilizzando. CloudFormation Se il InstanceId parametro è specificato, viene utilizzato.

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

  • Fornisce il codice del risultato 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 policy 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. Accedi AWSSupport-ValidateFSxWindowsADConfig a Systems Manager in Documenti.

  2. Seleziona Execute automation (Esegui automazione).

  3. Per convalidare l'AD autogestito con un Amazon FSx esistente fallito o non configurato correttamente, 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. Questo è necessario per convalidare Amazon FSx esistente, fallito o non configurato correttamente.

    • SecretArn (Obbligatorio):

      L'ARN del segreto 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 questo GetSecretValue ARN.

    • FSxSecurityGroupId (Obbligatorio):

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

    • BucketName (Obbligatorio):

      Il bucket Amazon S3 in cui caricare i risultati della convalida. Assicurati che il bucket sia configurato con 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.

    Modulo dei parametri di input con campi ad esempio ID, IAM ruolo, bucket S3, segreti ARN 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 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 questo GetSecretValue ARN.

    • FSxSecurityGroupId (Obbligatorio):

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

    • BucketName (Obbligatorio):

      Il bucket Amazon S3 in cui caricare i risultati della convalida. Assicurati che il bucket sia configurato con 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 di server DNS o 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 desideri entrare a far parte del tuo file system. Fornisci 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 i seguenti passaggi:

    • CheckBucketPublicStatus(AWS: ExecuteScript):

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

    • BranchOnInputParameters(aws:branch):

      Si basa sui parametri di input forniti, ad esempio Amazon FSx ID o Amazon FSx parameters.

    • AssertFileSystemTypeIsWindows(aws:assert): AwsResourceProperty

      Se viene fornito l'ID Amazon FSx, convalida che il tipo di file system è 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):

      Si ramifica sull'input 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 il punto in cui verrà eseguito lo strumento AmazonFSxADValidation

    • DescribeStackResources(aws:execute): AwsApi

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

    • WaitForEC2InstanceToBeManaged(aws:waitForAwsResourceProperty):

      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 memorizza 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):

      Si diramano sui InstanceId parametri RetainCloudFormationStack e per determinare se lo CloudFormation stack deve essere eliminato.

    • DeleteCloudFormationStack(AWS: DeleteStack):

      Elimina la pila CloudFormation .

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

    La sezione Outputs 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