PublishPress Capabilities is the best plugin to control permissions for your WordPress posts, pages, media and custom post types.
Capabilities allows you to manage user roles. You can create and copy roles. You can choose specific permissions for each role. Capabilities also enables you to back up, restore and migrate your site’s permissions.