Questa è la nuova guida AWS CloudFormation di riferimento per i modelli. Aggiorna i segnalibri e i link. Per informazioni su come iniziare CloudFormation, consulta la Guida per l'AWS CloudFormation utente.
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à.
AWS::CloudFormation::Authentication
Utilizzate il tipo di AWS::CloudFormation::Authentication
metadati per specificare le credenziali di autenticazione per i file o le fonti specificate con il tipo di metadati. AWS::CloudFormation::Init
Per includere le informazioni di autenticazione per un file o un'origine specificato con AWS::CloudFormation::Init
, usa la proprietà uris
se l'origine è un URI o la proprietà buckets
se l'origine è un bucket Amazon S3. Per ulteriori informazioni sui file, consulta File. Per ulteriori informazioni sulle origini, consulta Origini.
È inoltre possibile specificare le informazioni di autenticazione per i file direttamente nel tipo di metadatiAWS::CloudFormation::Init
. La chiave dei file della risorsa contiene una proprietà denominata authentication
. È possibile utilizzare la authentication
proprietà per associare le informazioni di autenticazione definite nel tipo di AWS::CloudFormation::Authentication
metadati direttamente a un file.
Per i file, AWS CloudFormation cerca le informazioni di autenticazione nel seguente ordine:
-
La proprietà
authentication
della chiaveAWS::CloudFormation::Init
files
. -
La
buckets
proprietàuris
o deiAWS::CloudFormation::Authentication
metadati.
Per quanto riguarda le fonti, CloudFormation cerca le informazioni di autenticazione nella buckets
proprietà uris
o dei AWS::CloudFormation::Authentication
metadati.
Sintassi
Per dichiarare questa entità nel CloudFormation modello, utilizzate la seguente sintassi:
Tieni presente le seguenti considerazioni quando utilizzi il tipo di metadatiAWS::CloudFormation::Authentication
:
-
A differenza della maggior parte CloudFormation delle risorse, il tipo di
AWS::CloudFormation::Authentication
metadati non contiene un blocco chiamato Proprietà, ma contiene invece un elenco di blocchi denominati dall'utente, ciascuno contenente le proprie proprietà di autenticazione.Non tutte le proprietà riguardano ogni tipo di autenticazione. Per ulteriori informazioni, vedete la proprietà type.
-
A differenza della maggior parte CloudFormation delle risorse, i nomi delle
AWS::CloudFormation::Authentication
proprietà utilizzano lettere minuscole a forma di cammello.
JSON
{ "AWS::CloudFormation::Authentication" { "
String
" : { "accessKeyId" :String
, "buckets" : [String, ...
], "password" :String
, "secretKey" :String
, "type" :String
, "uris" : [String, ...
], "username" :String
, "roleName" :String
} } }
YAML
AWS::CloudFormation::Authentication
String
: accessKeyId:String
buckets: -String
password:String
secretKey:String
type:String
uris: -String
username:String
roleName:String
Proprietà
accessKeyId
-
Specifica l'ID della chiave di accesso per l'autenticazione di S3.
Obbligatorio: condizionale. Può essere specificato solo se la proprietà
type
è impostata suS3
.Tipo: stringa
buckets
-
Un elenco di bucket Amazon S3 delimitati da virgola associati alle credenziali di autenticazione S3.
Obbligatorio: condizionale. Può essere specificato solo se la proprietà
type
è impostata suS3
.Tipo: elenco di valori stringa
password
-
Specifica la password per l'autenticazione di base.
Obbligatorio: condizionale. Può essere specificato solo se la proprietà type è impostata su
basic
.Tipo: stringa
secretKey
-
Specifica la chiave segreta per l'autenticazione S3.
Obbligatorio: condizionale. Può essere specificato solo se la proprietà
type
è impostata suS3
.Tipo: stringa
type
-
Speciifica se lo schema di autenticazione utilizza un nome utente e una password (di base) o un ID della chiave di accesso e una chiave segreta (S3).
Se specifichi
basic
, specifica le proprietàusername
,password
euris
.Se specifichi
S3
, specifica le proprietà (facoltative)accessKeyId
,secretKey
ebuckets
.Campo obbligatorio: sì
Valori validi:
basic
|S3
uris
-
Un elenco delimitato da virgole da associare URIs alle credenziali di autenticazione di base. L'autorizzazione si applica all'URI specificato URIs e a qualsiasi URI più specifico. Ad esempio, se specifichi
http://www.example.com
, l'autorizzazione si applicherà anche ahttp://www.example.com/test
.Obbligatorio: condizionale. Può essere specificato solo se la proprietà
type
è impostata subasic
.Tipo: elenco di valori stringa
username
-
Specifica il nome utente per l'autenticazione di base.
Obbligatorio: condizionale. Può essere specificato solo se la proprietà type è impostata su
basic
.Tipo: stringa
roleName
-
Descrive il ruolo per l'autenticazione basata sui ruoli.
Importante
Questo ruolo deve essere contenuto nel profilo dell'istanza collegato all' EC2 istanza. Un profilo dell'istanza può contenere solo un ruolo IAM.
Obbligatorio: condizionale. Può essere specificato solo se la proprietà
type
è impostata suS3
.Tipo: stringa.
Esempi
EC2 autenticazione del server web
Questo frammento di modello mostra come ottenere un file da un bucket S3 privato all'interno di un'istanza. EC2 Le credenziali utilizzate per l'autenticazione sono definite nei metadati e referenziate dai AWS::CloudFormation::Authentication
metadati nella sezione file. AWS::CloudFormation::Init
JSON
"WebServer": { "Type": "AWS::EC2::Instance", "DependsOn" : "BucketPolicy", "Metadata" : { "AWS::CloudFormation::Init" : { "config" : { "packages" : { "yum" : { "httpd" : [] } }, "files" : { "/var/www/html/index.html" : { "source" : { "Fn::Join" : [ "", [ "http://s3.amazonaws.com/", { "Ref" : "BucketName" }, "/index.html" ] ] }, "mode" : "000400", "owner" : "apache", "group" : "apache", "authentication" : "S3AccessCreds" } }, "services" : { "sysvinit" : { "httpd" : { "enabled" : "true", "ensureRunning" : "true" } } } } }, "AWS::CloudFormation::Authentication" : { "S3AccessCreds" : { "type" : "S3", "accessKeyId" : { "Ref" : "AccessKeyID" }, "secretKey" : { "Ref" : "SecretAccessKey" } } } }, "Properties": {
EC2 Resource Properties ...
} }
YAML
WebServer: Type: AWS::EC2::Instance DependsOn: BucketPolicy Metadata: AWS::CloudFormation::Init: config: packages: yum: httpd: [] files: /var/www/html/index.html: source: !Join - '' - - 'http://s3.amazonaws.com/' - !Ref BucketName - '/index.html' mode: '000400' owner: apache group: apache authentication: S3AccessCreds services: sysvinit: httpd: enabled: 'true' ensureRunning: 'true' AWS::CloudFormation::Authentication: S3AccessCreds: type: S3 accessKeyId: !Ref AccessKeyID secretKey: !Ref SecretAccessKey Properties:
EC2 Resource Properties ...
Specificare l'autenticazione di base e S3
L'esempio seguente di snippet modello include i tipi di autenticazione di base e S3.
JSON
"AWS::CloudFormation::Authentication" : { "testBasic" : { "type" : "basic", "username" : { "Ref" : "UserName" }, "password" : { "Ref" : "Password" }, "uris" : [ "example.com/test" ] }, "testS3" : { "type" : "S3", "accessKeyId" : { "Ref" : "AccessKeyID" }, "secretKey" : { "Ref" : "SecretAccessKey" }, "buckets" : [{ "Fn::Sub": "${BucketName}" }] } }
YAML
AWS::CloudFormation::Authentication: testBasic: type: basic username: !Ref UserName password: !Ref Password uris: - 'example.com/test' testS3: type: S3 accessKeyId: !Ref AccessKeyID secretKey: !Ref SecretAccessKey buckets: - !Sub ${BucketName}
Ruoli IAM
L'esempio seguente mostra come utilizzare i ruoli IAM:
-
myRole
è una risorsa AWS::IAM::Role. -
L' EC2 istanza Amazon in esecuzione
cfn-init
viene associatamyRole
tramite un profilo di istanza. -
L'esempio specifica l'autenticazione utilizzando la proprietà
buckets
, come nell'autenticazione Amazon S3. Puoi anche specificare l'autenticazione per nome.
JSON
"AWS::CloudFormation::Authentication": { "rolebased" : { "type": "S3", "buckets": [{ "Fn::Sub": "${BucketName}" }], "roleName": { "Ref": "myRole" } } }
YAML
AWS::CloudFormation::Authentication: rolebased: type: S3 buckets: - !Sub ${BucketName} roleName: !Ref myRole