Title: Content Sentinel: Secure Downloads
Author: contentsentinel
Published: <strong>December 3, 2025</strong>
Last modified: December 4, 2025

---

Search plugins

![](https://ps.w.org/content-sentinel/assets/banner-772x250.png?rev=3409604)

![](https://ps.w.org/content-sentinel/assets/icon-256x256.png?rev=3409129)

# Content Sentinel: Secure Downloads

 By [contentsentinel](https://profiles.wordpress.org/contentsentinel/)

[Download](https://downloads.wordpress.org/plugin/content-sentinel.1.0.zip)

 * [Details](https://pcd.wordpress.org/plugins/content-sentinel/#description)
 * [Reviews](https://pcd.wordpress.org/plugins/content-sentinel/#reviews)
 *  [Installation](https://pcd.wordpress.org/plugins/content-sentinel/#installation)
 * [Development](https://pcd.wordpress.org/plugins/content-sentinel/#developers)

 [Support](https://wordpress.org/support/plugin/content-sentinel/)

## Description

Content Sentinel is a powerful WordPress plugin that enables secure, time-limited
access to files stored in AWS S3 or S3-compatible storage providers (like Wasabi,
DigitalOcean Spaces, and Backblaze B2). Perfect for protecting premium content, 
course materials, digital products, and media files.

#### Key Features

 * **Secure File Delivery**: Generate presigned URLs that expire automatically, 
   ensuring your files remain protected
 * **S3 Browser**: Browse your S3 bucket directly from WordPress admin (Pro feature)
 * **S3 Compatible**: Works with AWS S3, Wasabi, DigitalOcean Spaces, Backblaze 
   B2, and other S3-compatible providers
 * **Clean URLs**: Use shortcodes to generate clean, user-friendly download links
   instead of long presigned URLs
 * **No AWS SDK Required**: Pure PHP implementation – no external dependencies
 * **Easy Setup**: One-click AWS CloudFormation setup or manual configuration
 * **Flexible Delivery Modes**: Force download or stream/play in browser (Pro feature)
 * **Custom Denial Messages**: Customize access denied messages (Pro feature)

#### How It Works

 1. **Configure Your Storage**: Connect to your AWS S3 bucket or S3-compatible provider
 2. **Generate Secure Links**: Use the shortcode `[content_sentinel_url key="/path/
    to/file.mp4"]` to create secure download links
 3. **Automatic Expiration**: Links expire after a set time (default: 10 minutes, configurable)
 4. **Protect Your Content**: Files are never directly accessible – users must go through
    WordPress authentication

#### Use Cases

 * **Course Platforms**: Deliver course videos and materials securely
 * **Digital Products**: Protect downloadable products and resources
 * **Membership Sites**: Control access to premium content
 * **Media Libraries**: Securely serve large video/audio files
 * **Document Sharing**: Share sensitive documents with time-limited access

#### Pro Features (Content Sentinel Pro)

Upgrade to Content Sentinel Pro for advanced features:

 * **Access Control**: Integrate with MemberPress, Paid Memberships Pro, or WordPress
   Roles
 * **Download Limiting**: Set per-user and per-IP download limits
 * **Download Logging**: Track all download attempts with detailed logs
 * **Custom Expiration**: Override default expiration times per file
 * **S3 Browser**: Browse, navigate, and manage files directly in WordPress
 * **Enhanced Video Player**: Professional video player with speed controls and 
   Picture-in-Picture
 * **File Access Rules**: Set granular permissions for individual files
 * **Export/Import Rules**: Backup and restore your access control settings
 * **Coming Soon – Google Cloud Services – S3.
 * **Coming Soon – Visual Controls for the Enhanced Video Player.

#### Technical Details

 * **Pure PHP**: No external dependencies or AWS SDK required
 * **AWS Signature Version 4**: Industry-standard security for S3 requests
 * **WordPress Native**: Uses WordPress APIs and follows WordPress coding standards
 * **Performance Optimized**: Caching and efficient URL generation
 * **Security First**: Input sanitization, nonce verification, and capability checks

#### Service Disclosure

This plugin relies on Amazon Web Services (AWS) to store and retrieve files as well
as other
 S3 compliant services digitalocean, backblaze b2, Wasabi.

 * [AWS Privacy Policy](https://aws.amazon.com/privacy/)
 * [DO Privacy Policy](https://www.digitalocean.com/legal/privacy-policy/)
 * [B2 Privacy Policy](https://www.backblaze.com/company/policy/privacy)
 * [Wasabi Privacy Policy](https://wasabi.com/legal/privacy-policy/)

### Support

For support, feature requests, and bug reports, please visit:
 * Website: https://
content-sentinel.com * Support: support@content-sentinel.com * Documentation: https://
content-sentinel.com/docs

### Credits

Content Sentinel: Secure Downloads is developed by Content Sentinel.
 Special thanks
to the WordPress community and all contributors.

## Installation

#### Automatic Installation

 1. Log in to your WordPress admin panel
 2. Navigate to **Plugins**  **Add New**
 3. Search for “Content Sentinel”
 4. Click **Install Now**
 5. Click **Activate**

#### Manual Installation

 1. Download the plugin zip file
 2. Extract the files to `/wp-content/plugins/content-sentinel/`
 3. Log in to your WordPress admin panel
 4. Navigate to **Plugins**
 5. Find “Content Sentinel” and click **Activate**

#### Setup Instructions

 1. Go to **Settings**  **Content Sentinel**
 2. Choose your setup method:
 3.  * **Quick Setup**: Use the AWS CloudFormation one-click setup (AWS only)
     * **Manual Setup**: Enter your S3 credentials manually
 4. Configure your storage provider:
 5.  * Select **Amazon S3** or **S3 Compatible**
     * Enter your bucket name, region, access key, and secret key
     * For S3 Compatible providers, enter your custom endpoint URL
 6. Click **Test Connection** to verify your credentials
 7. Click **Save Settings**

#### Getting Your AWS Credentials

If you don’t have AWS credentials:

 1. Use the **AWS Quick Setup** button in the plugin
 2. This will open the AWS CloudFormation console
 3. Follow the step-by-step guide to create a secure S3 bucket and IAM user
 4. Copy the credentials back to WordPress

For S3-compatible providers, refer to your provider’s documentation for obtaining
access credentials.

## FAQ

### Do I need an AWS account?

No! Content Sentinel works with AWS S3, but also supports S3-compatible providers
like Wasabi, DigitalOcean Spaces, and Backblaze B2. You can use any S3-compatible
storage service.

### Is the AWS SDK required?

No! Content Sentinel uses pure PHP to generate AWS Signature Version 4 requests.
No external dependencies are required.

### How secure are presigned URLs?

Presigned URLs use AWS Signature Version 4, the same security standard used by AWS
SDKs. URLs expire after a set time (default: 10 minutes), and each URL is cryptographically
signed.

### Can I use this with S3-compatible providers?

Yes! Content Sentinel supports any S3-compatible storage provider. Simply select“
S3 Compatible” and enter your provider’s endpoint URL.

### What permissions does my IAM user need?

Your IAM user needs:
 * `s3:GetObject` – To download files * `s3:ListBucket` – To
browse files (Pro feature)

You can restrict access to specific buckets or paths for additional security.

### How do I generate download links?

Use the shortcode: `[content_sentinel_url key="/path/to/file.mp4"]`

Or use the Pro version’s S3 Browser to copy links directly.

### Can I customize the expiration time?

Yes! The default expiration is 10 minutes, but you can change it in settings (up
to 7 days, which is AWS’s maximum). Pro users can set custom expiration times per
file.

### What happens if a link expires?

Expired links return an error. Users will need to request a new link. This ensures
your content remains protected.

### Do I need the Pro version?

The free version provides secure file delivery with presigned URLs. Upgrade to Pro
for access control using wordpress roles/memberpress/paid membership pro, download
limiting, file logging, and the S3 Browser Control interface.

### Is my data secure?

Yes! Content Sentinel follows WordPress security best practices:
 * All inputs are
sanitized * Nonces verify form submissions * Capability checks restrict access *
No sensitive data is logged * Files are never directly accessible

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Content Sentinel: Secure Downloads” is open source software. The following people
have contributed to this plugin.

Contributors

 *   [ contentsentinel ](https://profiles.wordpress.org/contentsentinel/)

[Translate “Content Sentinel: Secure Downloads” into your language.](https://translate.wordpress.org/projects/wp-plugins/content-sentinel)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/content-sentinel/),
check out the [SVN repository](https://plugins.svn.wordpress.org/content-sentinel/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/content-sentinel/)
by [RSS](https://plugins.trac.wordpress.org/log/content-sentinel/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.0

 * Initial release
 * AWS S3 and S3-compatible provider support
 * Presigned URL generation
 * Shortcode support for clean URLs
 * AWS CloudFormation one-click setup
 * Manual configuration option
 * S3 Browser (Pro feature)
 * Access Control integration (Pro feature)
 * Download limiting and logging (Pro feature)
 * Enhanced video player (Pro feature)

## Meta

 *  Version **1.0**
 *  Last updated **4 months ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 5.0 or higher **
 *  Tested up to **6.8.5**
 *  PHP version ** 7.4 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/content-sentinel/)
 * Tags
 * [cloud storage](https://pcd.wordpress.org/plugins/tags/cloud-storage/)[content-protection](https://pcd.wordpress.org/plugins/tags/content-protection/)
   [s3](https://pcd.wordpress.org/plugins/tags/s3/)[secure downloads](https://pcd.wordpress.org/plugins/tags/secure-downloads/)
 *  [Advanced View](https://pcd.wordpress.org/plugins/content-sentinel/advanced/)

## Ratings

No reviews have been submitted yet.

[Add my review](https://wordpress.org/support/plugin/content-sentinel/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/content-sentinel/reviews/)

## Contributors

 *   [ contentsentinel ](https://profiles.wordpress.org/contentsentinel/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/content-sentinel/)