ucla / kaltura-zoom-cleanup

AWS Lambda function to delete all Zoom recordings associated to the default user

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Kaltura Zoom Cleanup

AWS Lambda function to delete all Zoom recordings associated to the default user

Why is this needed?

For the "Kaltura Video Integration with Zoom" any Zoom recording that is created that does not map to KMC userid is owned by the default user that is specified in the setup.

Rather than leave those "orphaned" recordings on the KMC that can potentially include senstive information from meetings that have been recorded, we want to automatically purge all Zoom recordings owned by the default user.

Implementation

This is a PHP script that will be run as a AWS Lamda function to run once a hour. It connects to the a given KMC using the Kaltura API.

It will look for videos owned by the specified default user that have a description that starts with "Zoom Recording". If found, it will delete that entry in the KMC and log that action for debugging later.

Development setup

To work on this code, please do the following:

  1. Download composer
  2. Run php composer.phar install
  3. Install Serverless
  4. Install Yarn
  5. Run yarn

Deployment instructions

  1. In AWS add a new IAM user that will be running this app.
  2. Install and configure the Serverless Framework
    • npm install -g serverless
    • sls config credentials --provider aws --key PUBLIC_KEY --secret SECRET_KEY
      • Make sure PUBLIC_KEY and SECRET_KEY belongs to the user you created in Step 1.
      • If you have multiple AWS credentials setup, you can set the given profile by calling: export AWS_PROFILE="<PROFILE NAME>"
  3. Store the following secrets in your AWS Secrets Manager in the us-west-2 region named "kmc_admin"
    • KMC_PARTNER_ID (Found in your KMC > Settings > Integration > Partner ID)
    • KMC_USER_ID (User from whom to delete orphaned Zoom recordings)
    • KMC_ADMIN_SECRET (Found in your KMC > Settings > Integration > Administrator Secret)
  4. Deploy to AWS sls deploy

Resources

About

AWS Lambda function to delete all Zoom recordings associated to the default user

License:BSD 2-Clause "Simplified" License


Languages

Language:PHP 100.0%