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à.
Installazione di Guard come AWS Lambda funzione
È possibile eseguire AWS CloudFormation Guard l'installazione tramite Cargo, il gestore di pacchetti Rust. Guard as an AWS Lambda function (cfn-guard-lambda
) è un wrapper leggero per Guard (cfn-guard
) che può essere usato come funzione Lambda.
Prerequisiti
Prima di poter installare Guard come funzione Lambda, è necessario soddisfare i seguenti prerequisiti:
-
AWS Command Line Interface (AWS CLI) configurato con le autorizzazioni per distribuire e richiamare funzioni Lambda. Per ulteriori informazioni, consultare la pagina relativa alla configurazione di AWS CLI.
-
Un ruolo di AWS Lambda esecuzione in (). AWS Identity and Access Management IAM Per ulteriori informazioni, vedere ruolo di AWS Lambda esecuzione.
-
Negli RHEL ambienti CentOS/, aggiungi il repository dei
musl-libc
pacchetti alla tua configurazione yum. Per ulteriori informazioni, vedere ngompa/musl-libc.
Installa il gestore di pacchetti Rust
Cargo è il gestore di pacchetti Rust. Completa i seguenti passaggi per installare Rust, che include Cargo.
-
Esegui il seguente comando da un terminale, quindi segui le istruzioni sullo schermo per installare Rust.
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
-
(Facoltativo) Per gli ambienti Ubuntu, esegui il seguente comando.
sudo apt-get update; sudo apt install build-essential
-
-
Configura la variabile di
PATH
ambiente ed esegui il comando seguente.source $HOME/.cargo/env
Installa Guard come funzione Lambda (Linux, macOS o Unix)
Per installare Guard come funzione Lambda, completa i seguenti passaggi.
-
Dal tuo terminale di comando, esegui il comando seguente.
cargo install cfn-guard-lambda
-
(Facoltativo) Per confermare l'installazione di Guard come funzione Lambda, esegui il comando seguente.
cfn-guard-lambda --version
Questo comando restituisce il seguente output.
cfn-guard-lambda 3.0.0
-
-
Per installare il
musl
supporto, esegui il comando seguente.rustup target add x86_64-unknown-linux-musl
-
Crea con
musl
, quindi esegui il comando seguente nel tuo terminale.cargo build --release --target x86_64-unknown-linux-musl
Per un runtime personalizzato, AWS Lambda richiede un eseguibile con il nome
bootstrap
nel file.zip del pacchetto di distribuzione. Rinomina l'cfn-lambda
eseguibile generato inbootstrap
e aggiungilo all'archivio.zip.-
Per gli ambienti macOS, crea il tuo file di configurazione cargo nella radice del progetto Rust o in.
~/.cargo/config
[target.x86_64-unknown-linux-musl] linker = "x86_64-linux-musl-gcc"
-
-
Passa alla directory
cfn-guard-lambda
principale.cd ~/.cargo/bin/cfn-guard-lambda
-
Esegui il seguente comando nel tuo terminale.
cp ./../target/x86_64-unknown-linux-musl/release/cfn-guard-lambda ./bootstrap && zip lambda.zip bootstrap && rm bootstrap
-
Esegui il comando seguente per inviarlo
cfn-guard
come funzione Lambda al tuo account.aws lambda create-function --function-name
cfnGuard
\ --handler guard.handler \ --zip-file fileb://./lambda.zip \ --runtime provided \ --role arn:aws:iam::444455556666
:role/your_lambda_execution_role \ --environment Variables={RUST_BACKTRACE=1} \ --tracing-config Mode=Active
Per creare ed eseguire Guard come funzione Lambda
Per richiamare l'invio cfn-guard-lambda
come funzione Lambda, esegui il comando seguente.
aws lambda invoke --function-name
cfnGuard
\ --payload '{"data":"input data
","rules":["rule1
","rule2
"]}' \ output.json
Per chiamare la struttura della richiesta della funzione Lambda
Richieste per cfn-guard-lambda
richiedere i seguenti campi:
-
data
— La versione in formato stringa del JSON modello YAML or -
rules
— La versione in formato stringa del file del set di regole