WordPress/wp-admin/includes
TimothyBlynJacobs d5ebe12f11 REST API: Introduce Application Passwords for API authentication.
In WordPress 4.4 the REST API was first introduced. A few releases later in WordPress 4.7, the Content API endpoints were added, paving the way for Gutenberg and countless in-site experiences. In the intervening years, numerous plugins have built on top of the REST API. Many developers shared a common frustration, the lack of external authentication to the REST API.

This commit introduces Application Passwords to allow users to connect to external applications to their WordPress website. Users can generate individual passwords for each application, allowing for easy revocation and activity monitoring. An authorization flow is introduced to make the connection flow simple for users and application developers.

Application Passwords uses Basic Authentication, and by default is only available over an SSL connection.

Props georgestephanis, kasparsd, timothyblynjacobs, afercia, akkspro, andraganescu, arippberger, aristath, austyfrosty, ayesh, batmoo, bradyvercher, brianhenryie, helen, ipstenu, jeffmatson, jeffpaul, joostdevalk, joshlevinson, kadamwhite, kjbenk, koke, michael-arestad, Otto42, pekz0r, salzano, spacedmonkey, valendesigns.
Fixes #42790.

Built from https://develop.svn.wordpress.org/trunk@49109


git-svn-id: http://core.svn.wordpress.org/trunk@48871 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-10-08 22:14:06 +00:00
..
admin-filters.php Administration: Remove multiple viewport meta tags from mobile pages. 2020-07-09 23:29:08 +00:00
admin.php Code Modernization: Replace `dirname( __FILE__ )` calls with `__DIR__` magic constant. 2020-02-06 06:33:11 +00:00
ajax-actions.php General: Replace older-style PHP type conversion functions with type casts. 2020-10-08 21:15:13 +00:00
bookmark.php Posts, Post Types: Display a more specific error message when an attachment could not be inserted into the database. 2020-06-07 09:24:11 +00:00
class-automatic-upgrader-skin.php Docs: Improve inline comments per the documentation standards. 2020-01-29 00:45:18 +00:00
class-bulk-plugin-upgrader-skin.php I18N: Capitalize translator comments consistently, add trailing punctuation. 2019-09-03 00:41:05 +00:00
class-bulk-theme-upgrader-skin.php I18N: Capitalize translator comments consistently, add trailing punctuation. 2019-09-03 00:41:05 +00:00
class-bulk-upgrader-skin.php Code Modernisation: Introduce the spread operator in `wp-admin/includes/class-*-upgrader-skin.php`. 2019-09-15 10:42:54 +00:00
class-core-upgrader.php Docs: Correct the indentation for some array type docs. 2020-09-21 16:46:06 +00:00
class-custom-background.php Coding Standards: Use strict type check for `in_array()` and `array_search()` where strings are involved. 2020-04-05 03:02:11 +00:00
class-custom-image-header.php Docs: Remove extra spaces from `@param` tags. 2020-06-20 12:58:10 +00:00
class-file-upload-upgrader.php Docs: Improve inline comments per the documentation standards. 2020-01-29 00:45:18 +00:00
class-ftp-pure.php Docs: Update URLs in some `@link` tags and switch them to HTTPS. 2019-11-01 14:57:02 +00:00
class-ftp-sockets.php Docs: Update URLs in some `@link` tags and switch them to HTTPS. 2019-11-01 14:57:02 +00:00
class-ftp.php General: Continuing to work towards a passing PHP Compatibility scan. 2020-06-03 17:40:12 +00:00
class-language-pack-upgrader-skin.php I18N: Capitalize translator comments consistently, add trailing punctuation. 2019-09-03 00:41:05 +00:00
class-language-pack-upgrader.php Docs: Add missing `@return` tag to `Language_Pack_Upgrader::check_package()`. 2020-10-05 13:44:11 +00:00
class-pclzip.php Docs: Fix typos in `wp-admin/includes/class-pclzip.php`. 2020-01-29 00:56:04 +00:00
class-plugin-installer-skin.php Upgrade/Install: Clarify the descriptions for `install_(plugin|theme)_overwrite_actions`. 2020-07-28 18:16:07 +00:00
class-plugin-upgrader-skin.php Docs: Add missing documentation for various upgrade/install class properties and methods. 2020-07-28 11:57:03 +00:00
class-plugin-upgrader.php Docs: Add missing `@return` tag to `Language_Pack_Upgrader::check_package()`. 2020-10-05 13:44:11 +00:00
class-theme-installer-skin.php Themes: Normalize the installed theme path in `Theme_Installer_Skin::do_overwrite()` before comparing with the uploaded theme. 2020-08-31 17:11:04 +00:00
class-theme-upgrader-skin.php Docs: Add missing documentation for various upgrade/install class properties and methods. 2020-07-28 11:57:03 +00:00
class-theme-upgrader.php Docs: Add missing `@return` tag to `Language_Pack_Upgrader::check_package()`. 2020-10-05 13:44:11 +00:00
class-walker-category-checklist.php Taxonomy: Make sure `wp_terms_checklist()` and `Walker_Category_Checklist::start_el()` properly handle an array of strings as `selected_cats` or `popular_cats` values. 2020-08-27 02:48:06 +00:00
class-walker-nav-menu-checklist.php General: Replace older-style PHP type conversion functions with type casts. 2020-10-08 21:15:13 +00:00
class-walker-nav-menu-edit.php Menus: Check the correct variable in `Walker_Nav_Menu_Edit::start_el()` when menu item is a taxonomy term. 2020-06-17 19:47:14 +00:00
class-wp-ajax-upgrader-skin.php Docs: Add missing documentation for various upgrade/install class properties and methods. 2020-07-28 11:57:03 +00:00
class-wp-application-passwords-list-table.php REST API: Introduce Application Passwords for API authentication. 2020-10-08 22:14:06 +00:00
class-wp-automatic-updater.php Docs: Add missing `@return` tags for some `WP_Automatic_Updater` methods: 2020-09-27 08:36:06 +00:00
class-wp-comments-list-table.php Docs: Update the URL for PHP date formats table in translator comments. 2020-09-18 10:37:08 +00:00
class-wp-community-events.php Docs: Update the URL for PHP date formats table in translator comments. 2020-09-18 10:37:08 +00:00
class-wp-debug-data.php Site Health: Add site environment type to the debug information. 2020-08-16 18:27:04 +00:00
class-wp-filesystem-base.php Docs: Correct references to `WP_Filesystem_Base` methods in various DocBlocks. 2020-08-21 00:43:05 +00:00
class-wp-filesystem-direct.php Coding Standards: Add some space around control structures in `WP_Filesystem_*` classes for consistency and better readability. 2020-06-19 10:36:12 +00:00
class-wp-filesystem-ftpext.php Filesystem API: Use correct variable when closing the file handle in `WP_Filesystem_FTPext::get_contents()`. 2020-08-15 20:56:02 +00:00
class-wp-filesystem-ftpsockets.php Coding Standards: Add some space around control structures in `WP_Filesystem_*` classes for consistency and better readability. 2020-06-19 10:36:12 +00:00
class-wp-filesystem-ssh2.php Docs: First pass at some inline docs fixes mostly made by PHPCBF. 2020-07-23 20:01:04 +00:00
class-wp-importer.php General: Replace older-style PHP type conversion functions with type casts. 2020-10-08 21:15:13 +00:00
class-wp-internal-pointers.php Docs: Improve inline comments per the documentation standards. 2020-01-29 00:45:18 +00:00
class-wp-links-list-table.php Comments: Use the existing static variable instead of calling `::has_items()` again in `WP_Comments_List_Table::extra_tablenav()`. 2020-08-04 15:58:06 +00:00
class-wp-list-table-compat.php Code is Poetry. 2017-11-30 23:11:00 +00:00
class-wp-list-table.php Quick/Bulk Edit: Revert [48134] to address the bottom "Bulk actions" dropdown not functioning properly on Posts and Users list tables. 2020-08-26 14:18:04 +00:00
class-wp-media-list-table.php I18N: Merge duplicate "List view" and "Grid view" strings. 2020-07-25 21:32:05 +00:00
class-wp-ms-sites-list-table.php General: Replace older-style PHP type conversion functions with type casts. 2020-10-08 21:15:13 +00:00
class-wp-ms-themes-list-table.php General: Replace older-style PHP type conversion functions with type casts. 2020-10-08 21:15:13 +00:00
class-wp-ms-users-list-table.php Administration: Use sentence case for "Mark as spam" bulk action links for sites and users, for consistency with comments. 2020-07-24 00:27:03 +00:00
class-wp-plugin-install-list-table.php Coding Standards: Use strict comparison in `wp-admin/includes/class-wp-plugin-install-list-table.php`. 2020-09-11 01:05:08 +00:00
class-wp-plugins-list-table.php Coding Standards: Use strict comparison in `wp-admin/includes/class-wp-plugins-list-table.php`. 2020-09-10 14:23:08 +00:00
class-wp-post-comments-list-table.php Coding Standards: Upgrade WPCS to 1.0.0 2018-08-17 01:51:36 +00:00
class-wp-posts-list-table.php General: Replace older-style PHP type conversion functions with type casts. 2020-10-08 21:15:13 +00:00
class-wp-privacy-data-export-requests-list-table.php Privacy: Convert buttons to links visually in Privacy Export/Erasure "Next Steps" column. 2020-02-10 21:15:05 +00:00
class-wp-privacy-data-removal-requests-list-table.php Privacy: Convert buttons to links visually in Privacy Export/Erasure "Next Steps" column. 2020-02-10 21:15:05 +00:00
class-wp-privacy-policy-content.php Privacy: Avoid a PHP 7.4 notice in `WP_Privacy_Policy_Content::text_change_check()`. 2020-08-21 01:13:05 +00:00
class-wp-privacy-requests-table.php Privacy: Ensure bulk action related strings end with periods. 2020-09-22 18:40:04 +00:00
class-wp-screen.php Administration: Don't override the `$mode` global in `WP_Screen::render_view_mode()` if it's already set. 2020-07-28 16:55:04 +00:00
class-wp-site-health-auto-updates.php Site Health: Recognize `define( 'WP_AUTO_UPDATE_CORE', 'minor' )` as an acceptable value. 2020-08-14 20:39:08 +00:00
class-wp-site-health.php Site Health: Ensure that the tests returned by `WP_Site_Health::get_tests()` always have the required array keys: `direct` and `async`. 2020-08-17 02:03:04 +00:00
class-wp-site-icon.php Docs: Improve inline comments per the documentation standards. 2020-01-29 00:45:18 +00:00
class-wp-terms-list-table.php Taxonomy: Allow for `wp_count_terms( $args )` signature, making passing a taxonomy optional. 2020-08-21 22:32:06 +00:00
class-wp-theme-install-list-table.php I18N: Add context to some plugin and theme strings for consistency. 2020-07-20 23:14:05 +00:00
class-wp-themes-list-table.php I18N: Add context to some theme strings for consistency. 2020-07-21 16:33:05 +00:00
class-wp-upgrader-skin.php Docs: Add missing documentation for various upgrade/install class properties and methods. 2020-07-28 11:57:03 +00:00
class-wp-upgrader-skins.php Docs: Add missing `@deprecated` tags in the file docblock of some deprecated files. 2019-10-08 17:19:04 +00:00
class-wp-upgrader.php Docs: Correct references to `WP_Filesystem_Base` methods in various DocBlocks. 2020-08-21 00:43:05 +00:00
class-wp-users-list-table.php General: Replace older-style PHP type conversion functions with type casts. 2020-10-08 21:15:13 +00:00
comment.php Docs: Use more appropriate variable names in the inline docs for action and filter parameters. 2020-07-23 19:06:03 +00:00
continents-cities.php I18N: Update list of continents and cities for the timezone selection. 2018-07-18 11:21:25 +00:00
credits.php Administration: Allow `wp_credits()` to accept `$version` and `$locale` parameters. 2020-08-03 12:53:08 +00:00
dashboard.php General: Replace older-style PHP type conversion functions with type casts. 2020-10-08 21:15:13 +00:00
deprecated.php I18N: Add context to some plugin and theme strings for consistency. 2020-07-20 23:14:05 +00:00
edit-tag-messages.php Coding Standards: Fix the `Squiz.PHP.DisallowMultipleAssignments` violations in `wp-admin`. 2019-07-01 12:52:01 +00:00
export.php General: Replace older-style PHP type conversion functions with type casts. 2020-10-08 21:15:13 +00:00
file.php General: Replace older-style PHP type conversion functions with type casts. 2020-10-08 21:15:13 +00:00
image-edit.php General: Replace older-style PHP type conversion functions with type casts. 2020-10-08 21:15:13 +00:00
image.php Media: Standardise the description for image size parameters. 2020-09-20 16:23:07 +00:00
import.php Import: Remove "Blogroll" import option (for links in OPML format) from the list of popular importer plugins. 2020-02-10 02:12:06 +00:00
list-table.php REST API: Introduce Application Passwords for API authentication. 2020-10-08 22:14:06 +00:00
media.php General: Replace older-style PHP type conversion functions with type casts. 2020-10-08 21:15:13 +00:00
menu.php Coding Standards: Use strict comparison for `count()` calls. 2020-05-23 11:38:08 +00:00
meta-boxes.php Docs: Update the URL for PHP date formats table in translator comments. 2020-09-18 10:37:08 +00:00
misc.php Docs: Update the URL for PHP date formats table in translator comments. 2020-09-18 10:37:08 +00:00
ms-admin-filters.php Docs: Improve comments in some `wp-admin` files per the documentation standards. 2020-01-29 00:35:08 +00:00
ms-deprecated.php I18N: Capitalize translator comments consistently, add trailing punctuation. 2019-09-03 00:41:05 +00:00
ms.php Docs: Miscellaneous docblock corrections. 2020-07-18 22:11:02 +00:00
nav-menu.php General: Replace older-style PHP type conversion functions with type casts. 2020-10-08 21:15:13 +00:00
network.php I18N: Restore the "Error:" prefix for error messages. 2020-06-21 14:00:09 +00:00
noop.php Code Modernization: Remove conditional use of PHP `realpath()`. 2019-09-20 20:46:56 +00:00
options.php Coding Standards: Use strict comparison where static strings are involved. 2020-05-16 18:42:12 +00:00
plugin-install.php Upgrade/install: Fix/clarify the "Upload in a zip format" string. 2020-07-19 17:11:02 +00:00
plugin.php General: Replace older-style PHP type conversion functions with type casts. 2020-10-08 21:15:13 +00:00
post.php General: Replace older-style PHP type conversion functions with type casts. 2020-10-08 21:15:13 +00:00
privacy-tools.php Privacy: Improve clarity of privacy error strings. 2020-10-04 03:23:09 +00:00
revision.php Docs: Remove an empty line between `@param` and `@return` tags, per the documentation standards. 2020-06-20 11:18:09 +00:00
schema.php Docs: Update the URL for PHP date formats table in translator comments. 2020-09-18 10:37:08 +00:00
screen.php Docs: Various formatting improvements to inline docblocks. 2020-07-23 00:52:05 +00:00
taxonomy.php Docs: Various corrections to inline docblocks. 2020-07-23 00:48:06 +00:00
template.php General: Replace older-style PHP type conversion functions with type casts. 2020-10-08 21:15:13 +00:00
theme-install.php Upgrade/install: Fix/clarify the "Upload in a zip format" string. 2020-07-19 17:11:02 +00:00
theme.php Themes: Remove the ability to delete themes from the single site Appearance screen on Multisite installations. 2020-09-20 12:03:05 +00:00
translation-install.php Coding Standards: PHP short ternary operator syntax is not allowed. 2020-06-08 21:27:10 +00:00
update-core.php I18N: Further adjust some update/install strings for consistency. 2020-07-23 21:08:01 +00:00
update.php General: Replace older-style PHP type conversion functions with type casts. 2020-10-08 21:15:13 +00:00
upgrade.php General: Replace older-style PHP type conversion functions with type casts. 2020-10-08 21:15:13 +00:00
user.php REST API: Introduce Application Passwords for API authentication. 2020-10-08 22:14:06 +00:00
widgets.php Docs: Remove `@staticvar` tags from core. 2020-06-20 12:40:12 +00:00