Download the PHP package ccasanovas/cake-cognito without Composer

On this page you can find all versions of the php package ccasanovas/cake-cognito. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package cake-cognito

CognitoSDK plugin para CakePHP

Este plugin permite administrar los usuarios de AWS Cognito desde el panel de la aplicación, asegurándose de que queden sincronizados con su copia local.

Este plugin asume un canal de comunicación unidireccional con AWS Cognito en el que los cambios en campos sincronizados ocurren en la aplicación primero para luego ser propagados por el plugin en AWS Cognito.


Changelog

Fecha: 2018-10-11


Documentación

Funcionalidades

Implementadas:

Pendientes:

Notas

Instalación

Para obtener el plugin con composer se requiere agregar a composer.json lo siguiente:

  1. Al objeto "require", agregar el plugin: "ccasanovas/cake-cognito": "dev-master"
  2. Al arreglo de "repositories" agregar el objeto:
  3. correr composer update

NOTA: asegurarse de tener los permisos de acceso/deploy correctos en el repositorio.

Una vez instalado el plugin en el repositorio:

  1. agregar a config/bootstrap.php la siguiente línea: Plugin::load('Ccasanovas/CognitoSDK', ['bootstrap' => true, 'routes' => true]); para cargar el plugin.
  2. asegurarse de que exista la tabla api_users. El plugin viene con una migración para ésto, si es requerida: bin/cake migrations migrate -p Ccasanovas/CognitoSDK
  3. Crear una User Pool en Cognito. Tener en cuenta:
    • La User Pool debe contener solamente los datos requeridos para el acceso. Los campos extras deberían solamente estar en la tabla local.
    • Asegurarse que la validación de los campos requeridos para la creación de usuarios en Cognito sea igual o más permisiva que la validación de la tabla local, de lo contrario podrían ocurrir errores al crear los usuarios que no se mostrarían correctamente al usuario.
    • No permitir a los usuarios cambiar su email o teléfono mediante/desde Cognito, esto podría causar una desincronización de datos. Con excepción de los cambios de contraseña, todos los cambios a los usuarios deberían ocurrir a través de la API prevista por el plugin.
  4. agregar a config/bootstrap.php la siguiente línea, antes de cargar el plugin: Configure::write('CognitoSDK.config', ['awscognito']);
  5. Copie el archivo vendor/ccasanovas/cake-cognito/config/awscognito.php a app/config/awscognito.php.
  6. Modifique el archivo para configurar el plugin. (ver sección "Variables de configuracion")
  7. Las rutas por defecto son las siguientes (para cambiar esto, ver sección "Extendiendo el plugin". Para desactivar las rutas por defecto use 'routes' => false en el Plugin::load)
    • El controller de usuarios del plugin debería ser accesible desde /aws-cognito/api-users
    • Los API endpoints son accesibles desde /aws-cognito/api/api-users/:action

Estructura

Ccasanovas\CognitoSDK\Model\Entity\ApiUser

propiedades:

propiedades virtuales:

Ccasanovas\CognitoSDK\Model\Table\ApiUsersTable

Ccasanovas\CognitoSDK\Model\Traits\AwsCognitoSaveTrait

Este trait es usado por ApiUsersTable. Sus función es:

Ccasanovas\CognitoSDK\Model\Behavior\AwsCognitoBehavior

Este Behavior se encarga de habilitar toda la funcionalidad relacionada con Cognito. Sus métodos son los siguientes:

Ccasanovas\CognitoSDK\Model\Behavior\ImportApiUsersBehavior

Este Behavior se encarga de agregar la funcionalidad de importación de usuarios. Por ahora, esto incluye la habilidad de importar usuarios en bloque, en formato CSV. Sus métodos son:

Ccasanovas\CognitoSDK\Controller\ApiUsersController

Utiliza los siguientes Traits:

Ccasanovas\CognitoSDK\Controller\Traits\BaseCrudTrait

Provee las siguientes acciones básicas para los usuarios administradores:

Ccasanovas\CognitoSDK\Controller\Traits\ImportApiUsersTrait

Provee las acciones para la importación de usuarios:

Ccasanovas\CognitoSDK\Controller\Traits\AwsCognitoTrait

Provee las acciones relevantes para la funcionalidad exclusiva de Cognito:

Ccasanovas\CognitoSDK\Controller\Api\ApiUsersController

Utiliza el BaseApiEndpointsTrait.

Ccasanovas\CognitoSDK\Controller\Traits\BaseApiEndpointsTrait

Provee los siguientes endpoints para los desarrolladores de los clientes:

Variables de configuracion

Las variables de configuración se guardan en el arreglo de configuración de la aplicación al igual que el resto de las configuraciones (config/app.php por defecto).

Las configuraciones disponibles son:

Testing

Actualmente el plugin tiene aprox. un 90% de cobertura de lineas y un 70% de cobertura de métodos y funciones.

Para correr los tests, debe descargarse el repo por separado (para que composer registre el modo desarrollo). Correr composer para instalar las dependencias con composer install, y luego, correr los tests con vendor/bin/phpunit.

Extendiendo el plugin

Cambiando rutas

para cambiar las rutas por defecto del plugin (/aws-cognito/api-users), se puede agregar lo siguiente a config/routes.php, debe primero settear 'routes' => false al momento de cargar el plugin con Plugin::load en bootstrap.php.

Luego, puede utilizar lo siguiente dentro del scope base (/) en su config/routes.php.

Sobreescribiendo vistas

para sobreescribir las templates sin tener que extender el controller, se deben colocar las nuevas templates en:

src/Template/Plugin/Ccasanovas/CognitoSDK/ApiUsers/*

por ejempla para reemplazar el template del index:

src/Template/Plugin/Ccasanovas/CognitoSDK/ApiUsers/index.ctp

Extendiendo el controller/model

Para extender el controller y model en caso de ser necesario (por ejemplo para agregar una nueva asociación al modelo ApiUsers), la mejor forma de hacer es la siguiente:

Primero, extender el ApiUsersTable:

Luego extender el ApiUsersController:

Opcionalmente se puede extender la entidad ApiUser:

Ahora, para poder preservar las templates del plugin y solo tener que agregar las nuevas (o las que se quieran reemplazar), es posible modificar las rutas para que las nuevas acciones usen este controller y las demás, lleven al controller dentro del plugin:


All versions of cake-cognito with dependencies

PHP Build Version
Package Version
Requires cakephp/cakephp Version 4.*
aws/aws-sdk-php Version ^3.54
lcobucci/jwt Version ^3.2
ccasanovas/cakeapigateway Version 1.*
ccasanovas/cake-s3upload Version 1.*
muffin/footprint Version ^3.0
friendsofcake/search Version ^6.2
ralouphie/mimey Version ^1.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package ccasanovas/cake-cognito contains the following files

Loading the files please wait ....