Strapi plugin logo for Protected Populate

Protected Populate

An easy way to protect your GET populates from miss use. By protecting the endpoint from getting more data then you intended.

thumbnail for Protected Populate

Strapi Protected Populate Plugin

Strapi Discord NPM Version Monthly download on NPM

Table of Contents

🚦 Current Status

This package is currently under development and should be consider ALPHA in terms of state. I/We are currently accepting contributions.

For more information on contributing please see the contrib message below.

✨ Features

These are the primary features that are finished or currently being worked on:

  • Protected your Get request populates and fields
  • Allow you to protect routes per role (In the near future)

🤔 Motivation

The purpose of this plugin is to have a easy way to protect your get endpoints from getting to much information out of them. I made this plugin since I got sick and tired of writing complex policies to do this exact thing.

🖐 Requirements

Supported Strapi Versions:

Strapi VersionSupportedTested On
v3N/A
v4.0.xN/A
v4.1.xN/A
v4.2.xN/A
v4.3.xN/A
v4.4.xN/A
v4.5.0/v4.5.2N/A
v4.5.3+December 2022

This plugin will not work on any version older then v4.5.3 since I am using the on syntax for dynamic zones wat was added in that version

⏳ Installation

Install the plugin in your Strapi project or your Strapi plugin.

# Using Yarn (Recommended)
yarn add strapi-plugin-protected-populate

# Using npm
npm install strapi-plugin-protected-populate

🔧 Configuration

WIP

Config

standard config

1
2
3
4
5
6
7
module.exports = () => {
  return {
    'protected-populate': {
      enabled: true,
    },
  };
};

enable auto populate will automatically populate all fields and populates if no ctx.query.populate / ctx.query.fields is found.

1
2
3
4
5
6
7
8
9
10
module.exports = () => {
  return {
    'protected-populate': {
      enabled: true,
      config: {
        ['auto-populate']: true,
      },
    },
  };
};

Contributing

Please open issues before making a pull request so that we can talk about what you want to change for the best results.

Migration

V1.0.0 to v1.1.0 choose what way you want to do the migration GUI or File change

GUI way

Go to the gui select all Media types and deselect them Update to v1.1.1 select all deselected Media

File change

Find all the media in fields and change them to populate

License

MIT

Install now

npm install strapi-plugin-protected-populate

Last updated

34 days ago

Strapi Compatibility

4.5.3 and above

Author

github profile image for Boegie19
Boegie19

Useful links

Create your own plugin

Check out the available plugin resources that will help you to develop your plugin or provider and get it listed on the marketplace.