Tempkey Blog
Cloudinary Access Governance: How to Manage Contractor Access to Cloudinary Without Risking Media Assets
Discover how to configure Cloudinary user permissions, isolate media folders, and manage time-bound access for external designers, agencies, and developers.
Learning how to manage contractor access to Cloudinary requires combining fine-grained Cloudinary user roles, folder-level access restrictions, scoped API credentials, and strictly timed offboarding schedules. By replacing broad administrative invitations with granular permissions and automated expiration, operations teams can give external freelancers immediate creative access without risking proprietary media assets.
Central media asset management hubs like Cloudinary store high-value creative collateral—from unreleased video campaigns and raw brand photography to proprietary product renderings and front-end application graphics. When scaling creative production through external agencies, freelance designers, and contract developers, giving broad access to your Cloudinary Media Library introduces significant security and operational risks. Without strict identity controls and structured offboarding, temporary contributors can accidentally delete production files, overwrite asset transformations, or retain access long after their contract ends.
Introduction: Managing External Access in Cloudinary Media Libraries
Managing external access to digital asset management (DAM) platforms requires balancing operational speed with data protection: creative teams need rapid access to assets to keep deliverables on schedule, while operations and security teams must isolate sensitive brand assets from unauthorized exposure or loss. In practice, contractors are frequently invited under broad default account roles because configuring granular permissions is perceived as an administrative bottleneck. This practice leads to permission creep, where external vendors retain elevated privileges across production tools.
Contractor access governance treats temporary access as a bounded lifecycle rather than a static account assignment. Following the principle of least privilege—as detailed in the OWASP Authorization Cheat Sheet—users and processes should be granted only the minimum privileges necessary to perform their intended functions. When an agency's SOW concludes, revoking their access across Cloudinary and connected SaaS tools must occur predictably while generating a clear audit log.
Understanding Cloudinary User Roles and Permission Models
Cloudinary provides account-level user roles that define console capabilities and Media Library boundaries. Based on Cloudinary's user management documentation, access permissions are structured across defined account role tiers:
- Master Admin / Admin: Full control over the Cloudinary environment, including billing settings, user management, security configurations, account credentials, and asset deletion. Contractors should not receive Admin access.
- Technical Admin: Grants access to technical configurations, upload mappings, auto-upload definitions, account webhooks, and transformation settings, excluding billing administration. This role is intended for internal engineering leads.
- Media Library Admin: Full permissions within the Media Library UI, including creating top-level folders, editing metadata schemes, assigning folder permissions to other users, and performing permanent deletions.
- Editor: Allows users to upload assets, edit metadata, create subfolders, manage transformations, and move files within folders they have been explicitly granted access to. Standard for core internal creative staff and lead agency producers.
- Restricted Editor: Allows users to upload assets and view files within assigned folders, but restricts them from deleting assets or altering top-level folder structures. Recommended for creative freelancers submitting design deliverables.
- Viewer: Read-only access to assigned folders. Viewers can view and download assets but cannot upload new files, modify existing assets, or alter metadata. Suitable for client stakeholders, legal reviewers, and external QA testers.
To establish baseline security, align Cloudinary account roles directly with specific contractor job functions:
| Contractor Role | Recommended Cloudinary Role | Media Library Access Scope | Primary Risk Factor |
|---|---|---|---|
| Freelance Graphic Designer | Restricted Editor | Specific project campaign folder only | Accidental overwrite or deletion of core brand templates |
| External Video Production Agency | Editor | Dedicated video production folder & asset collection | Unapproved public distribution of unreleased footage |
| Contract Front-End Developer | Viewer (Console) + Scoped API Key | Staging UI folder or programmatic upload preset | Exposing account master API secrets in client-side code |
| External QA / Brand Reviewer | Viewer | Final export folder (Read-only) | Unintentional modification of asset tags or metadata |
Account-level roles interact directly with Cloudinary folder permissions. A user assigned the Editor role globally cannot inspect or modify folders unless folder-level permissions explicitly grant them access to those specific asset paths.
Step-by-Step Blueprint: How to Manage Contractor Access to Cloudinary Safely
Implementing secure contractor access requires structured operational procedures from initial onboarding through final offboarding. Following this blueprint maintains strict media controls while keeping production workflows moving.
Step 1: Invite Contractors Using Verified Corporate Email Addresses
Do not allow contractors to join your Cloudinary environment using personal webmail accounts (@gmail.com or @yahoo.com). Require all external contributors to accept invitations sent to their official agency domain or a provisioned corporate contractor address (such as contractor-name@yourcompany.com). This ensures that if the contractor departs their parent organization, their identity anchor is disabled at the domain email level.
Step 2: Scope Permissions to Specific Folders or Asset Collections
When inviting a new contractor to your Cloudinary Media Library, avoid granting root-level access. Isolate their work within a dedicated folder path (such as /Projects/2026/Q3_Product_Launch/Agency_Deliverables). Restricting their user profile to a specific folder sub-tree prevents unauthorized visibility into adjacent brand campaigns and unreleased product assets.
Step 3: Provision Scoped Upload Presets and Programmatic Keys
If contract developers require programmatically generated image transformations or dynamic asset uploads, do not share your primary account API key or secret. Instead, configure unsigned or signed upload presets restricted to specific incoming folders, explicit file formats (such as .png, .webp, .mp4), and maximum file size limits. For API integrations, generate secondary key pairs with restricted access scopes.
Step 4: Define Explicit Access End Dates Upon Onboarding
Every contractor access grant should have an explicit expiration date tied to their statement of work (SOW). When onboarding a contractor, set calendar triggers or configure automated governance workflows to execute access revocation on the contract end date. Using a centralized governance solution like Tempkey's contractor access management platform allows teams to define grant lifecycles upfront, eliminating reliance on manual offboarding checklists.
Managing External Media Access with Folder-Level Restrictions and User Groups
Managing external media access effectively requires structuring your Cloudinary Media Library architecture prior to issuing invitations. As outlined in Cloudinary's folder permissions documentation, account administrators can control folder access using granular permissions assigned to individual users or organized User Groups.
To protect sensitive brand collateral, implement a restricted folder structure designed for external collaboration:
/ Production (Internal Only)
├── / Brand_Assets_Master
└── / Confidential_Campaigns_2026
/ External_Collaboration (Contractor Access)
├── / Agency_Alpha_Social
└── / Freelance_3D_Renders
Instead of manually configuring access settings for every individual contractor, use Cloudinary User Groups to handle multi-person agency teams. For example, create a User Group named Vendor-Agency-Alpha, assign the group Restricted Editor permissions on the /External_Collaboration/Agency_Alpha_Social folder, and add incoming agency employees to that group. When a vendor staff member joins or leaves the agency's team, adding or removing them from the User Group updates their permissions automatically across all assigned folders.
Folder permissions in Cloudinary support three primary access tiers:
- Can View: User can view, search, and download assets within the folder. Ideal for external reviewers and developers who need to inspect asset URLs.
- Can Contribute: User can upload new assets and edit metadata for assets they upload. They cannot delete assets uploaded by other users or alter folder security settings. Ideal for freelance content creators.
- Can Manage: User can delete assets, rename subfolders, and grant folder permissions to other account users. Restrict this tier strictly to internal brand managers.
Enforcing folder-level isolation protects core production media from accidental mass deletion, file overwrites, or unintended asset exposure.
Securing API Keys, Upload Presets, and SDK Access for Contract Developers
When working with external front-end developers, full-stack contractors, or agency development teams building integrations into your web and mobile applications, access requirements go beyond the Cloudinary Media Library UI. Developers frequently require API access to manage uploads, retrieve asset metadata, or trigger dynamic media transformations through Cloudinary SDKs.
Sharing primary account credentials with contract developers introduces severe risks. If an account API secret is leaked or hardcoded into a public repository, unauthorized users can read, modify, or delete your account's media assets. To prevent security incidents, manage programmatic contractor access using strictly scoped configuration mechanisms.
Configuring Scoped Upload Presets
Upload presets define default parameters for assets uploaded via SDKs or APIs. When external developers build client-side upload interfaces, use Cloudinary's upload presets configuration to restrict incoming uploads:
- Set Target Folders: Force all uploads using the preset into a designated contractor upload folder (such as
/Incoming/Contractor_Uploads). - Restrict File Extensions: Explicitly define allowed extensions (e.g.,
jpg,png,svg) to prevent contractors or end-users from uploading executable files or unauthorized media formats. - Enforce Size Restrictions: Limit the maximum file size per upload (e.g., 10 MB) to prevent storage usage spikes.
- Apply Automatic Transformations: Force incoming assets to automatically strip GPS metadata, convert to optimized web formats, or apply default security tags upon upload.
Managing Secondary API Keys and Rotation Protocols
For server-side integration development, generate dedicated secondary API key pairs rather than sharing your primary account API key. Assign external developers individual key pairs that can be revoked or rotated independently without breaking production applications.
When a developer's contract ends, revoke their specific secondary API key immediately inside the Cloudinary Security Settings console. Ensure your team rotates any staging environment variables that the contractor had access to during development.
Establishing Timely Revocation: How to Manage Contractor Access to Cloudinary Offboarding
The primary security failure in contractor identity management is offboarding drift. External contracts naturally end, but user seats, API keys, and folder permissions often remain active long after the work is complete. Unattended contractor seats create lingering security risks and occupy paid seats in SaaS subscriptions.
An effective offboarding workflow requires clear steps executed the moment a contractor's statement of work concludes:
- Revoke Cloudinary Console Access: Remove the user account from the Cloudinary User Management console or set their status to disabled.
- Clear Folder Access & User Group Memberships: Remove the user from all active User Groups and clear explicit folder permissions across your Media Library.
- Revoke Secondary API Credentials: Disable any developer API keys or upload presets created specifically for the contractor's project.
- Clear Associated SaaS Access: De-provision the contractor's access across adjacent tools in your creative stack, such as Figma, GitHub, Slack, and cloud storage providers.
- Verify Revocation State: Audit account logs to verify that the user's active sessions have been invalidated and that read-back checks confirm zero remaining active grants.
Managing this workflow manually across dozens of freelancers and tools often leads to missed offboarding steps. Operations teams streamline this process by using centralized access management software to schedule automated revocations across their application stack.
When managing multi-tool stacks, Tempkey's native access control integrations simplify multi-provider offboarding. Tempkey natively enforces access on 10 providers: Slack, Google Workspace, Microsoft 365, GitHub, GitLab, Zoom, AWS IAM, Figma, Dropbox, and Asana. Notion and Trello are limited-native (tracked, not fully enforced) and Zapier/Make serve as best-effort webhook bridges without automated verification.
When an offboarding event triggers, Tempkey executes revocation and reads provider state back to confirm it. Because revocation depends on third-party provider APIs, Tempkey does not guarantee removal within any specific timeframe and surfaces failed or unenforceable revokes in the audit log.
Audit Readiness: Maintaining Exportable Offboarding Logs for Vendor Operations
Operations and security teams need clear evidence showing when external access was granted, who authorized the request, which assets were accessible, and when the access was revoked. Maintaining traceable records is critical for internal vendor oversight, security reviews, and operational transparency.
Tracking contractor access using unmanaged spreadsheets or informal chat requests leaves gaps that make historical access verification impossible. If an unreleased marketing asset leaks or a file is missing, teams need an audit trail to determine who had access to that specific path during the campaign window.
To support internal documentation needs, Tempkey provides an exportable, append-only audit trail available in CSV or PDF formats. Tempkey gives teams an exportable, append-only audit trail to support compliance and offboarding records. Tempkey does not hold SOC 2, ISO 27001, HIPAA, or PCI certification. Source: Tempkey source.
Operations teams can also manage access programmatically. Tempkey provides a public REST API covering grants, extensions, revocations with read-back verification, integrations, audit trails, and API key management. Keys are bearer tokens with read/write scopes; an OpenAPI 3 spec is published at api.tempkey.io/openapi.json and documentation is available at tempkey.io/docs/api.
For organizations evaluating governance infrastructure, Tempkey's Team and Business plans provide predictable pricing based on active contractor grants rather than per-seat employee licensing. Plans are month-to-month (Free / $39 Team / $99 Business) with active-grant limits of 2 / 10 / 30. Business includes extended audit-history retention.
Enterprise IT suites bundle contractor offboarding inside larger, per-employee-priced products with quote-gated pricing. Tempkey prices per active contractor grant, making access governance accessible for small businesses and growing creative operations teams.
Conclusion: Building a Sustainable Contractor Access Strategy
Protecting media assets in Cloudinary while working with external partners requires an intentional, end-to-end access governance framework. By establishing minimal Cloudinary user roles, isolating creative work inside restricted folders, scoping programmatic API presets, and enforcing scheduled access expiration, operations teams can collaborate freely with external contractors without risking proprietary brand collateral.
Moving away from unmanaged spreadsheets and perpetual administrative accounts ensures that access is granted only for as long as necessary. Implementing scheduled access lifecycles and exportable audit records creates a scalable foundation for managing external vendor access across your entire creative and engineering stack.
Frequently Asked Questions
What is the best Cloudinary user role for a temporary freelance designer?
The Restricted Editor role is recommended for temporary freelance designers. This role allows freelancers to upload media deliverables and view existing assets within their assigned project folders, but prevents them from deleting files, altering folder settings, or modifying top-level Media Library structures.
Can I restrict a contractor in Cloudinary to view only specific folders?
Yes. Cloudinary supports folder-level access control within the Media Library. Administrators can assign individual users or User Groups explicit permissions (such as Can View, Can Contribute, or Can Manage) on specific folder paths while keeping root-level asset libraries completely hidden.
How do I revoke API keys granted to external developers in Cloudinary?
To revoke API keys granted to contract developers, navigate to the Cloudinary Management Console under Settings > Security. Locate the specific secondary API key assigned to the developer and select Delete or Disable. If the developer was using shared staging credentials, rotate the staging API secret and update your application's environment configuration immediately.
What happens to media uploaded by a contractor after their Cloudinary account is deleted?
Deleting or disabling a contractor's Cloudinary account removes their login access, API credentials, and folder permissions. However, media assets uploaded by the contractor remain in your Cloudinary Media Library because asset ownership belongs to the master Cloudinary account, not the individual user profile.
How can Ops teams track active temporary access grants across multiple tools?
Operations teams can centralize temporary access lifecycles across multiple SaaS applications by using automated grant management solutions. Tools like Tempkey allow operations managers to define temporary access start and end dates upfront, automate offboarding workflows, and maintain an exportable, append-only audit trail across platforms like Slack, Google Workspace, GitHub, Figma, and Dropbox.
Ready to stop tracking contractor access on spreadsheets? Try Tempkey to manage temporary grants, automate offboarding workflows, and export append-only audit trails across your organization.