Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
AWS::CloudFormation::Authentication
Verwenden Sie die AWS::CloudFormation::Authentication
-Ressource, um die Authentifizierungsinformationen für Dateien oder Quellen anzugeben, die Sie mit der AWS::CloudFormation::Init-Ressource angeben.
Um Authentifizierungsinformationen für eine Datei oder Quelle einzubeziehen, die Sie mit angebenAWS::CloudFormation::Init
, verwenden Sie die uris
Eigenschaft, wenn die Quelle eine ist, URI oder die buckets
Eigenschaft, wenn die Quelle ein Amazon S3 S3-Bucket ist. Weitere Informationen über Dateien finden Sie unter Dateien. Weitere Informationen zu Quellen finden Sie unter Quellen.
Sie können Authentifizierungsinformationen für Dateien auch direkt in der AWS::CloudFormation::Init
-Ressource angeben. Der Dateischlüssel der Ressource enthält eine Eigenschaft mit dem Namen authentication
. Mithilfe der authentication
-Eigenschaft können Sie Authentifizierungsinformationen, die in einer AWS::CloudFormation::Authentication
-Ressource angegeben sind, direkt einer Datei zuweisen.
Sucht bei Dateien in der folgenden Reihenfolge nach Authentifizierungsinformationen: AWS CloudFormation
-
Die
authentication
-Eigenschaft desAWS::CloudFormation::Init
-Schlüssels.files
-
Die
uris
- oderbuckets
Eigenschaft derAWS::CloudFormation::Authentication
-Ressource.
Sucht bei Quellen nach Authentifizierungsinformationen in der buckets
Eigenschaft uris
or der AWS::CloudFormation::Authentication
Ressource. CloudFormation
Syntax
Verwenden Sie die folgende Syntax, um diese Entität in Ihrer CloudFormation Vorlage zu deklarieren:
Sie sollten bei der Verwendung des AWS::CloudFormation::Authentication
-Typs Folgendes beachten:
-
Im Gegensatz zu den meisten CloudFormation Ressourcen enthält der
AWS::CloudFormation::Authentication
Typ keinen Block namens Properties, sondern eine Liste von benutzerdefinierten Blöcken, von denen jeder seine eigenen Authentifizierungseigenschaften enthält.Nicht alle Eigenschaften gelten für jeden Authentifizierungstyp; weitere Details finden Sie unter der type-Eigenschaft.
-
Im Gegensatz zu den meisten CloudFormation Ressourcen werden Eigenschaftsnamen in Kamelkleinbuchstaben geschrieben.
JSON
{ "Type" : "AWS::CloudFormation::Authentication" { "
String
" : { "accessKeyId" :String
, "buckets" : [String, ...
], "password" :String
, "secretKey" :String
, "type" :String
, "uris" : [String, ...
], "username" :String
, "roleName" :String
} } }
YAML
Type: AWS::CloudFormation::Authentication
String
: accessKeyId:String
buckets: -String
password:String
secretKey:String
type:String
uris: -String
username:String
roleName:String
Eigenschaften
accessKeyId
-
Gibt die Zugriffsschlüssel-ID für die S3-Authentifizierung an.
Erforderlich: Bedingt. Kann nur angegeben werden, wenn die Eigenschaft
type
aufS3
festgelegt ist.Typ: Zeichenfolge
buckets
-
Eine durch Komma getrennte Liste mit Amazon S3-Buckets, die den S3-Authentifizierungsinformationen zugewiesen werden müssen.
Erforderlich: Bedingt. Kann nur angegeben werden, wenn die Eigenschaft
type
aufS3
festgelegt ist.Typ: Liste von Zeichenfolgenwerten
password
-
Gibt das Passwort für die Authentifizierung an.
Erforderlich: Bedingt. Kann nur angegeben werden, wenn die Eigenschaft "type" auf
basic
festgelegt ist.Typ: Zeichenfolge
secretKey
-
Gibt den geheimen Schlüssel für die S3-Authentifizierung an.
Erforderlich: Bedingt. Kann nur angegeben werden, wenn die Eigenschaft
type
aufS3
festgelegt ist.Typ: Zeichenfolge
type
-
Gibt an, ob das Authentifizierungsschema einen Benutzernamen und ein Passwort (Basic) oder eine Zugriffsschlüssel-ID und einen geheimen Schlüssel (S3) verwendet.
Wenn Sie
basic
angeben, müssen Sie die Eigenschaftenusername
,password
unduris
angeben.Wenn Sie
S3
angeben, müssen Sie die EigenschaftenaccessKeyId
,secretKey
undbuckets
(optional) angeben.Erforderlich: Ja
Gültige Werte:
basic
|S3
uris
-
Eine kommagetrennte Liste von Dateien, die URIs den Basisauthentifizierungsdaten zugeordnet werden sollen. Die Autorisierung gilt für die angegebenen URIs und alle spezifischeren. URI Wenn Sie beispielsweise
http://www.example.com
angeben, gilt die Autorisierung auch fürhttp://www.example.com/test
.Erforderlich: Bedingt. Kann nur angegeben werden, wenn die Eigenschaft
type
aufbasic
festgelegt ist.Typ: Liste von Zeichenfolgenwerten
username
-
Gibt den Benutzernamen für die Authentifizierung an.
Erforderlich: Bedingt. Kann nur angegeben werden, wenn die Eigenschaft "type" auf
basic
festgelegt ist.Typ: Zeichenfolge
roleName
-
Beschreibt die Rolle für eine auf Rollen basierende Authentifizierung.
Wichtig
Diese Rolle muss in dem Instanzprofil enthalten sein, das der EC2 Instanz angehängt ist. Ein Instanzprofil kann nur eine IAM Rolle enthalten.
Erforderlich: Bedingt. Kann nur angegeben werden, wenn die Eigenschaft
type
aufS3
festgelegt ist.Typ: Zeichenfolge.
Beispiele
Anmerkung
Im Gegensatz zu den meisten Ressourcen definiert der AWS::CloudFormation::Authentication
-Typ eine Liste der vom Benutzer benannte Blöcke, von denen jeder Authentifizierungseigenschaften mit der Binnenmajuskel-Benennung enthalten.
EC2Webserver-Authentifizierung
Dieser Vorlagenausschnitt zeigt, wie Sie eine Datei aus einem privaten S3-Bucket innerhalb einer EC2 Instanz abrufen. Die Anmeldeinformationen für die Authentifizierung werden in der AWS::CloudFormation::Authentication
-Ressource definiert und die AWS::CloudFormation::Init
-Ressource verweist im Abschnitt Files darauf.
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 ...
Angabe der Basic- und S3-Authentifizierung
Das folgende Beispiel eines Vorlagenausschnitt enthält die Authentifizierungstypen basic und 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}
IAMRollen
Das folgende Beispiel zeigt, wie IAM Rollen verwendet werden:
-
myRole
ist eine AWS::IAM: :Role-Ressource. -
Die EC2 ausgeführte Amazon-Instance
cfn-init
istmyRole
über ein Instance-Profil verknüpft. -
Das Beispiel zeigt, wie bei der Amazon S3-Authentifizierung, die Authentifizierung mit der
buckets
-Eigenschaft. Sie können auch die Authentifizierung mit Namen angeben.
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