Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Recursos personalizados
Open 3D Engine (O3DE), el sucesor de Lumberyard, ya está disponible en Developer Preview. Descargar O3DE |
Cloud Canvas proporciona una serie deAWS CloudFormationrecursos personalizadosque se puede utilizar en elAWS CloudFormationarchivos de plantilla para proyectos, implementaciones y grupos de recursos. Estos recursos personalizados los implementa partir del código de la función Lambda que se encuentra en ladev\
y el{game}
\AWS\project-codeProjectResourceHandler
recurso definido en eldev\
file. Estos recursos, en lugar de actuar como entidades estáticas, actúan más bien como funciones de biblioteca. Todos los recursos personalizados tienen propiedades de entrada y salida.{game}
\AWS\project-template.json
A continuación presentamos una lista resumida de recursos personalizados.
-
CognitoIdentityPool: administra los recursos del grupo de identidades de Amazon Cognito.
-
CognitoUserPool: administra los recursos del grupo de usuarios de Amazon Cognito.
-
EmptyDeployment— Utilizado en el
deployment-template.json
cuando no se han definido grupos de recursos. -
ResourceGroupConfiguration— proporciona datos de configuración para un grupo de recursosAWS CloudFormationrecurso de pila.
-
LambdaConfiguration: proporciona datos de configuración para recursos de funciones Lambday mantiene el rol de ejecución de la función Lambda.
-
Helper: proporciona funciones útiles para usarlas en plantillas.
-
API de servicio de Cloud Gem Framework: ofrece acceso mediante programación a funcionalidades de gema en la nube que puede utilizar para implementar características conectadas a la nube en su juego.
Para obtener más información sobre el control de acceso a los recursos, consulte Control del acceso a los recursos de .
CognitoIdentityPool
LaCustom::CognitoIdentityPool
recurso se utiliza en eldeployment-access-template.json
para crear y configurar recursos del grupo de identidades de Amazon Cognito.
Propiedades de Input
-
ConfigurationBucket
Obligatorio. Nombre del bucket de Amazon S3 que contiene los datos de configuración.
-
ConfigurationKey
Obligatorio. El key prefix de objeto de Amazon S3 en el que se encuentran los datos de configuración del proyecto en el bucket de configuración. Esta propiedad hace que AWS CloudFormation ejecute el controlador de recursos personalizados en cada operación.
-
IdentityPoolName
Obligatorio. Nombre del grupo de identidades.
-
UseAuthSettingsObject
Obligatorio. Debe ser
true
ofalse
. Determina si el grupo de identidades de Amazon Cognito está configurado para utilizar los proveedores de autenticación que se crearon con eladd-login-provider
comando. -
AllowUnauthenticatedIdentities
Obligatorio. Debe ser
true
ofalse
. Determina si el grupo de identidades de Amazon Cognito está configurado para permitir identidades no autenticadas. ConsulteGrupos de identidades dePara obtener más información acerca de la compatibilidad de Amazon Cognito para identidades autenticadas y no autenticadas. -
Roles
Opcional. Determina la función de IAM que asumen los usuarios autenticados y no autenticados. Consulte SetIdentityPoolRoles para ver una descripción de esta propiedad.
Propiedades de salida
-
IdentityPoolName
El nombre del grupo de identidades (igual que la propiedad de entrada
IdentityPoolName
). -
IdentityPoolId
Nombre del recurso físico del grupo de identidades.
CognitoUserPool
LaCustom::CognitoUserPool
recurso se utiliza en elPlayer Account Cloud Gem resource-template.json
para crear y configurar recursos del grupo de usuarios de Amazon Cognito. Puede utilizar este recurso para agregar grupos de usuarios de Amazon Cognito y vincularlos a un grupo de identidades de Amazon Cognito.
Propiedades de Input
-
PoolName
Obligatorio. El nombre del grupo de usuarios.
-
ConfigurationKey
Obligatorio. El key prefix de objeto de Amazon S3 en el que se encuentran los datos de configuración del proyecto en el bucket de configuración. Esta propiedad hace que AWS CloudFormation ejecute el controlador de recursos personalizados en cada operación.
-
ServiceToken
Obligatorio. Controlador para este tipo de recurso personalizado.
-
ClientApps
Obligatorio. Lista de aplicaciones cliente que se ha de crear para el grupo de usuarios. Al menos debe proporcionarse una.
-
LambdaConfig
Opcional. Mapeado de un nombre de disparador Lambda a un ARN de función Lambda. Este mapa se pasa a Amazon Cognito
CreateUserPool
API de cuando se crea un grupo de usuarios y para Amazon CognitoUpdateUserPool
API cuando se actualiza un grupo de usuarios.
Metadatos de: Vinculación de un grupo de usuarios con un grupo de identidades
Para vincular un Custom::CognitoUserPool
a un Custom::CognitoIdentityPool
, agregue una sección Identities
a la sección Metadata CloudCanvas
, como en el siguiente ejemplo.
"Metadata": { "CloudCanvas": { "Identities": [ { "IdentityPoolName": "PlayerAccess", "ClientApp": "DefaultClientApp" } ] } }
El controlador de Custom::CognitoIdentityPool
busca estos metadatos en recursos Custom::CognitoUserPool
cuando configura el grupo de identidades. IdentityPoolName
en los metadatos del grupo de usuarios debe coincidir con el elemento IdentityPoolName
en las propiedades del grupo de identidades. ClientApp
debe ser una de las aplicaciones que aparecen en la propiedad ClientApps
del grupo de usuarios.
Propiedades de salida
-
UserPoolName
El nombre del grupo de usuarios.
-
UserPoolId
El ID del grupo de usuarios.
-
ClientApps
Una lista que contiene el
ClientId
y elClientName
de cada una de las aplicaciones cliente del grupo de usuarios. -
PhysicalResourceId
ID del recurso físico del grupo de usuarios.
EmptyDeployment
El recurso Custom::EmptyDeployment
se utiliza en el archivo deployment-template.json
cuando no se han definido grupos de recursos. Esto es necesario para satisfacer el requisito de AWS CloudFormation de que una plantilla defina al menos un recurso.
Este recurso no tiene propiedades de entrada ni de salida.
ResourceGroupConfiguration
El recurso Custom::ResourceGroupConfiguration
se utiliza en deployment-template.json
para identificar la ubicación de la copia del archivo resource-template.json
en el bucket de configuración que debe utilizarse para un grupo de recursos específico.
Propiedades de Input
-
ConfigurationBucket
Obligatorio. Nombre del bucket de Amazon S3 que contiene los datos de configuración.
-
ConfigurationKey
Obligatorio. El key prefix de objeto de Amazon S3 en el que se encuentran los datos de configuración de la implementación en el bucket de configuración.
-
ResourceGroup
Obligatorio. El nombre del grupo de recursos que se va a configurar.
Propiedades de salida
-
ConfigurationBucket
Nombre del bucket de Amazon S3 que contiene los datos de configuración. Siempre es igual que la propiedad de entrada
ConfigurationBucket
. -
ConfigurationKey
El key prefix de objeto de Amazon S3 en el que se encuentran los datos de configuración del grupo de recursos especificado en el bucket de configuración. Esta es la
ConfigurationKey
de entrada con la cadenaResourceGroup
y el valor deResourceGroup
adjuntos. -
TemplateURL
La URL de Amazon S3 de la copia del grupo de recursos de
resource-template.json
en el bucket de configuración. Este valor debe utilizarse como el valor de la propiedadTemplateURL
del grupo de recursos.
LambdaConfiguration
LaCustom::LambdaConfiguration
recurso se utiliza enresource-template.json
para proporcionar datos de configuración para recursos de función Lambda.
Propiedades de Input
-
ConfigurationBucket
Obligatorio. Nombre del bucket de Amazon S3 que contiene los datos de configuración.
-
ConfigurationKey
Obligatorio. El key prefix de objeto de Amazon S3 en el que se encuentran los datos de configuración del grupo de recursos en el bucket de configuración.
-
FunctionName
Obligatorio. El nombre sencillo del recurso de función Lambda que se está configurado.
-
Settings
Opcional. Los valores que están disponibles para el código de función Lambda.
-
Runtime
Obligatorio. Identifica el tiempo de ejecución que se usa para la función Lambda.
Propiedades de salida
-
ConfigurationBucket
Nombre del bucket de Amazon S3 que contiene los datos de configuración. Siempre es igual que la propiedad de entrada
ConfigurationBucket
. -
ConfigurationKey
El key prefix de objeto de Amazon S3 en el que se encuentra el código comprimido de la función especificada en el bucket de configuración.
-
Runtime
El tiempo de ejecución de Lambda que usa la función. Siempre es igual que el valor de la propiedad de entrada
Runtime
. -
Role
El ID de la ejecución de la función Lambda creada para esta función.
Para obtener información sobre cómo se utiliza elLambdaConfiguration
un recurso personalizado se usa para permitir que las funciones Lambdade realicen acciones especificadas en recursos de proyecto específicas, consulteControl del acceso a los recursos de .
Helper
El recurso Custom::Helper
se utiliza en plantillas para llevar a cabo tareas sencillas similares a las que realizan las AWS CloudFormationfunciones intrínsecas de .
Propiedades de Input
-
Input
Proporciona un objeto JSON que procesa el controlador de recursos personalizados.
Salida
La salida es la versión procesada del objeto JSON que facilita la propiedad Input
.
Función Helper
El recurso Helper
admite la siguiente función. La función se aplica al valor de la propiedad Input
desde el controlador de recursos para producir el resultado.
HelperFn::LowerCase
Convierte una cadena de caracteres a minúsculas.
Sintaxis
{ "HelperFn::LowerCase" : "converted-string-value" }
Example
El siguiente ejemplo del archivo project-template.json
utiliza HelperFn::LowerCase
para convertir a minúsculas un nombre de pila.
{ ... "Resources": { ... "Helper": { "Type": "Custom::Helper", "Properties": { "Input": { "LowerCaseStackName": { "HelperFn::LowerCase": { "Ref": "AWS::StackName" } } }, "ServiceToken": ... } }, ... { "Fn::Join": [ "", [ "arn:aws:s3:::", { "Fn::GetAtt": [ "Helper", "LowerCaseStackName" ] }, "-*" ] ] } ... }