{"action":"created","comment":{"url":"https://api.github.com/repos/okta/okta.github.io/pulls/comments/124373989","pull_request_review_id":46656512,"id":124373989,"diff_hunk":"@@ -214,17 +216,46 @@ For web and native application types, an additional process is required:\n 1. Use the Okta Administration UI and check the **Refresh Token** checkbox under **Allowed Grant Types** on the client application page.\n 2. Pass the `offline_access` scope to your `/authorize` or `/token` request if you're using the `password` grant type.\n \n-##### Token Authentication Method\n+##### Token Authentication Methods\n+<!--If you change this section, change the section in oidc.md as well -->\n \n-For clients authenticating by client credentials, provide the [`client_id`](oauth2.html#request-parameters) and [`client_secret`](https://support.okta.com/help/articles/Knowledge_Article/Using-OpenID-Connect)\n-either as an Authorization header in the Basic auth scheme (basic authentication) or as additional parameters to the POST body. \n-Including credentials in both the headers and the POST body is not allowed.\n+If you authenticate a client with client credentials, provide the [`client_id`](oidc.html#request-parameters)\n+and [`client_secret`](https://support.okta.com/help/articles/Knowledge_Article/Using-OpenID-Connect) using either of the following methods:\n \n-For authentication with Basic auth, an HTTP header with the following format must be provided with the POST request.\n+* Provide [`client_id`](oidc.html#request-parameters) and [`client_secret`](https://support.okta.com/help/articles/Knowledge_Article/Using-OpenID-Connect)\n+  in an Authorization header in the Basic auth scheme (`client_secret_basic`). For authentication with Basic auth, an HTTP header with the following format must be provided with the POST request:\n+  ~~~sh\n+  Authorization: Basic ${Base64(<client_id>:<client_secret>)}\n+  ~~~\n+* Provide [`client_id`](oidc.html#request-parameters) and [`client_secret`](https://support.okta.com/help/articles/Knowledge_Article/Using-OpenID-Connect)\n+  as additional parameters to the POST body (`client_secret_post`)\n+* Provide [`client_id`](oidc.html#request-parameters) in a JWT that you sign with the [`client_secret`](https://support.okta.com/help/articles/Knowledge_Article/Using-OpenID-Connect)\n+  using HMAC algorithms HS256, HS384, or HS512. Specify the JWT in `client_assertion` and the type, `urn:ietf:params:oauth:client-assertion-type:jwt-bearer`, in `client_assertion_type` in the request. \n+\n+Including these credentials in both the Authorization header and POST body is not allowed.\n+\n+>If the value returned by `token_endpoint_authentication` in the [OAuth 2.0 Clients API](/docs/api/resources/oauth-clients.html#update-client-application) is not what you wish to use, you can change the value of a client app's `token_endpoint_authentication` with any of the values returned by `token_endpoint_auth_methods_support` (`client_secret_post`, `client_secret_basic`, or `client_secret_jwt`).\n+You can't change this value in the Okta user interface.\n+\n+##### Request Parameters for JWT Token Authentication\n+\n+If you use a JWT for token authentication (`client_secret_jwt`), use the following request parameters:","path":"_source/_docs/api/resources/oauth2.md","position":65,"original_position":65,"commit_id":"72b76c42d7a1e9e0441f055d9f18cd0b5eb8e216","original_commit_id":"72b76c42d7a1e9e0441f055d9f18cd0b5eb8e216","user":{"login":"larsjohansen-okta","id":9053598,"avatar_url":"https://avatars3.githubusercontent.com/u/9053598?v=3","gravatar_id":"","url":"https://api.github.com/users/larsjohansen-okta","html_url":"https://github.com/larsjohansen-okta","followers_url":"https://api.github.com/users/larsjohansen-okta/followers","following_url":"https://api.github.com/users/larsjohansen-okta/following{/other_user}","gists_url":"https://api.github.com/users/larsjohansen-okta/gists{/gist_id}","starred_url":"https://api.github.com/users/larsjohansen-okta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/larsjohansen-okta/subscriptions","organizations_url":"https://api.github.com/users/larsjohansen-okta/orgs","repos_url":"https://api.github.com/users/larsjohansen-okta/repos","events_url":"https://api.github.com/users/larsjohansen-okta/events{/privacy}","received_events_url":"https://api.github.com/users/larsjohansen-okta/received_events","type":"User","site_admin":false},"body":"\"JWT\" -> \"Client Secret JWT\"","created_at":"2017-06-27T19:35:12Z","updated_at":"2017-06-27T19:35:12Z","html_url":"https://github.com/okta/okta.github.io/pull/986#discussion_r124373989","pull_request_url":"https://api.github.com/repos/okta/okta.github.io/pulls/986","_links":{"self":{"href":"https://api.github.com/repos/okta/okta.github.io/pulls/comments/124373989"},"html":{"href":"https://github.com/okta/okta.github.io/pull/986#discussion_r124373989"},"pull_request":{"href":"https://api.github.com/repos/okta/okta.github.io/pulls/986"}}},"pull_request":{"url":"https://api.github.com/repos/okta/okta.github.io/pulls/986","id":127577641,"html_url":"https://github.com/okta/okta.github.io/pull/986","diff_url":"https://github.com/okta/okta.github.io/pull/986.diff","patch_url":"https://github.com/okta/okta.github.io/pull/986.patch","issue_url":"https://api.github.com/repos/okta/okta.github.io/issues/986","number":986,"state":"open","locked":false,"title":"first draft of JWT token auth update","user":{"login":"mystiberry-okta","id":17009066,"avatar_url":"https://avatars1.githubusercontent.com/u/17009066?v=3","gravatar_id":"","url":"https://api.github.com/users/mystiberry-okta","html_url":"https://github.com/mystiberry-okta","followers_url":"https://api.github.com/users/mystiberry-okta/followers","following_url":"https://api.github.com/users/mystiberry-okta/following{/other_user}","gists_url":"https://api.github.com/users/mystiberry-okta/gists{/gist_id}","starred_url":"https://api.github.com/users/mystiberry-okta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mystiberry-okta/subscriptions","organizations_url":"https://api.github.com/users/mystiberry-okta/orgs","repos_url":"https://api.github.com/users/mystiberry-okta/repos","events_url":"https://api.github.com/users/mystiberry-okta/events{/privacy}","received_events_url":"https://api.github.com/users/mystiberry-okta/received_events","type":"User","site_admin":false},"body":"## Description:\r\n- First draft of doc for JWT token authentication\r\n\r\n## Type of Pull Request:\r\n<!--- What types of PR is this? Put an `x` in all the boxes that apply: -->\r\n- [x] Content (Documentation updates or typo-fixes)\r\n- [ ] Blog Post\r\n- [ ] Functional (CSS changes, JS updates, or layout modifications)\r\n\r\n### Resolves:\r\n* [OKTA-131109](https://oktainc.atlassian.net/browse/OKTA-131109)\r\n\r\n## How Has This Been Tested?\r\n- [x] I have built this locally and verified that it does not break existing functionality.\r\n- [ ] For functional changes, I have tested against Chrome, Firefox, and Safari, and mobile.\r\n- [ ] For functional changes, I have added tests.\r\n\r\n## Primary Reviewers:\r\n@larsjohansen-okta There are gaps, not ready for the whole team or an editor to review. I'm sure there are errors.\r\n\r\n@larsjohansen-okta not sure I captured the client_assertion/client_assertion_type correctly, or in all the right places. Not sure if we need more content around JWT/HMAC etc. ","created_at":"2017-06-26T22:32:56Z","updated_at":"2017-06-27T19:35:12Z","closed_at":null,"merged_at":null,"merge_commit_sha":"aa0b5dd152e13752dfa3077f86f857234ef62d6f","assignee":null,"assignees":[],"requested_reviewers":[],"milestone":null,"commits_url":"https://api.github.com/repos/okta/okta.github.io/pulls/986/commits","review_comments_url":"https://api.github.com/repos/okta/okta.github.io/pulls/986/comments","review_comment_url":"https://api.github.com/repos/okta/okta.github.io/pulls/comments{/number}","comments_url":"https://api.github.com/repos/okta/okta.github.io/issues/986/comments","statuses_url":"https://api.github.com/repos/okta/okta.github.io/statuses/72b76c42d7a1e9e0441f055d9f18cd0b5eb8e216","head":{"label":"okta:dok-131109","ref":"dok-131109","sha":"72b76c42d7a1e9e0441f055d9f18cd0b5eb8e216","user":{"login":"okta","id":362460,"avatar_url":"https://avatars2.githubusercontent.com/u/362460?v=3","gravatar_id":"","url":"https://api.github.com/users/okta","html_url":"https://github.com/okta","followers_url":"https://api.github.com/users/okta/followers","following_url":"https://api.github.com/users/okta/following{/other_user}","gists_url":"https://api.github.com/users/okta/gists{/gist_id}","starred_url":"https://api.github.com/users/okta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/okta/subscriptions","organizations_url":"https://api.github.com/users/okta/orgs","repos_url":"https://api.github.com/users/okta/repos","events_url":"https://api.github.com/users/okta/events{/privacy}","received_events_url":"https://api.github.com/users/okta/received_events","type":"Organization","site_admin":false},"repo":{"id":10953058,"name":"okta.github.io","full_name":"okta/okta.github.io","owner":{"login":"okta","id":362460,"avatar_url":"https://avatars2.githubusercontent.com/u/362460?v=3","gravatar_id":"","url":"https://api.github.com/users/okta","html_url":"https://github.com/okta","followers_url":"https://api.github.com/users/okta/followers","following_url":"https://api.github.com/users/okta/following{/other_user}","gists_url":"https://api.github.com/users/okta/gists{/gist_id}","starred_url":"https://api.github.com/users/okta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/okta/subscriptions","organizations_url":"https://api.github.com/users/okta/orgs","repos_url":"https://api.github.com/users/okta/repos","events_url":"https://api.github.com/users/okta/events{/privacy}","received_events_url":"https://api.github.com/users/okta/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/okta/okta.github.io","description":"Okta Identity Platform API Docs and Developer Home","fork":false,"url":"https://api.github.com/repos/okta/okta.github.io","forks_url":"https://api.github.com/repos/okta/okta.github.io/forks","keys_url":"https://api.github.com/repos/okta/okta.github.io/keys{/key_id}","collaborators_url":"https://api.github.com/repos/okta/okta.github.io/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/okta/okta.github.io/teams","hooks_url":"https://api.github.com/repos/okta/okta.github.io/hooks","issue_events_url":"https://api.github.com/repos/okta/okta.github.io/issues/events{/number}","events_url":"https://api.github.com/repos/okta/okta.github.io/events","assignees_url":"https://api.github.com/repos/okta/okta.github.io/assignees{/user}","branches_url":"https://api.github.com/repos/okta/okta.github.io/branches{/branch}","tags_url":"https://api.github.com/repos/okta/okta.github.io/tags","blobs_url":"https://api.github.com/repos/okta/okta.github.io/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/okta/okta.github.io/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/okta/okta.github.io/git/refs{/sha}","trees_url":"https://api.github.com/repos/okta/okta.github.io/git/trees{/sha}","statuses_url":"https://api.github.com/repos/okta/okta.github.io/statuses/{sha}","languages_url":"https://api.github.com/repos/okta/okta.github.io/languages","stargazers_url":"https://api.github.com/repos/okta/okta.github.io/stargazers","contributors_url":"https://api.github.com/repos/okta/okta.github.io/contributors","subscribers_url":"https://api.github.com/repos/okta/okta.github.io/subscribers","subscription_url":"https://api.github.com/repos/okta/okta.github.io/subscription","commits_url":"https://api.github.com/repos/okta/okta.github.io/commits{/sha}","git_commits_url":"https://api.github.com/repos/okta/okta.github.io/git/commits{/sha}","comments_url":"https://api.github.com/repos/okta/okta.github.io/comments{/number}","issue_comment_url":"https://api.github.com/repos/okta/okta.github.io/issues/comments{/number}","contents_url":"https://api.github.com/repos/okta/okta.github.io/contents/{+path}","compare_url":"https://api.github.com/repos/okta/okta.github.io/compare/{base}...{head}","merges_url":"https://api.github.com/repos/okta/okta.github.io/merges","archive_url":"https://api.github.com/repos/okta/okta.github.io/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/okta/okta.github.io/downloads","issues_url":"https://api.github.com/repos/okta/okta.github.io/issues{/number}","pulls_url":"https://api.github.com/repos/okta/okta.github.io/pulls{/number}","milestones_url":"https://api.github.com/repos/okta/okta.github.io/milestones{/number}","notifications_url":"https://api.github.com/repos/okta/okta.github.io/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/okta/okta.github.io/labels{/name}","releases_url":"https://api.github.com/repos/okta/okta.github.io/releases{/id}","deployments_url":"https://api.github.com/repos/okta/okta.github.io/deployments","created_at":"2013-06-25T23:22:38Z","updated_at":"2017-06-19T02:06:50Z","pushed_at":"2017-06-27T19:34:57Z","git_url":"git://github.com/okta/okta.github.io.git","ssh_url":"git@github.com:okta/okta.github.io.git","clone_url":"https://github.com/okta/okta.github.io.git","svn_url":"https://github.com/okta/okta.github.io","homepage":"http://developer.okta.com/","size":86171,"stargazers_count":22,"watchers_count":22,"language":"HTML","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":67,"mirror_url":null,"open_issues_count":23,"forks":67,"open_issues":23,"watchers":22,"default_branch":"master"}},"base":{"label":"okta:weekly","ref":"weekly","sha":"e0415d1212a9cca30f8f97327138a7dcb4125ce0","user":{"login":"okta","id":362460,"avatar_url":"https://avatars2.githubusercontent.com/u/362460?v=3","gravatar_id":"","url":"https://api.github.com/users/okta","html_url":"https://github.com/okta","followers_url":"https://api.github.com/users/okta/followers","following_url":"https://api.github.com/users/okta/following{/other_user}","gists_url":"https://api.github.com/users/okta/gists{/gist_id}","starred_url":"https://api.github.com/users/okta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/okta/subscriptions","organizations_url":"https://api.github.com/users/okta/orgs","repos_url":"https://api.github.com/users/okta/repos","events_url":"https://api.github.com/users/okta/events{/privacy}","received_events_url":"https://api.github.com/users/okta/received_events","type":"Organization","site_admin":false},"repo":{"id":10953058,"name":"okta.github.io","full_name":"okta/okta.github.io","owner":{"login":"okta","id":362460,"avatar_url":"https://avatars2.githubusercontent.com/u/362460?v=3","gravatar_id":"","url":"https://api.github.com/users/okta","html_url":"https://github.com/okta","followers_url":"https://api.github.com/users/okta/followers","following_url":"https://api.github.com/users/okta/following{/other_user}","gists_url":"https://api.github.com/users/okta/gists{/gist_id}","starred_url":"https://api.github.com/users/okta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/okta/subscriptions","organizations_url":"https://api.github.com/users/okta/orgs","repos_url":"https://api.github.com/users/okta/repos","events_url":"https://api.github.com/users/okta/events{/privacy}","received_events_url":"https://api.github.com/users/okta/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/okta/okta.github.io","description":"Okta Identity Platform API Docs and Developer Home","fork":false,"url":"https://api.github.com/repos/okta/okta.github.io","forks_url":"https://api.github.com/repos/okta/okta.github.io/forks","keys_url":"https://api.github.com/repos/okta/okta.github.io/keys{/key_id}","collaborators_url":"https://api.github.com/repos/okta/okta.github.io/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/okta/okta.github.io/teams","hooks_url":"https://api.github.com/repos/okta/okta.github.io/hooks","issue_events_url":"https://api.github.com/repos/okta/okta.github.io/issues/events{/number}","events_url":"https://api.github.com/repos/okta/okta.github.io/events","assignees_url":"https://api.github.com/repos/okta/okta.github.io/assignees{/user}","branches_url":"https://api.github.com/repos/okta/okta.github.io/branches{/branch}","tags_url":"https://api.github.com/repos/okta/okta.github.io/tags","blobs_url":"https://api.github.com/repos/okta/okta.github.io/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/okta/okta.github.io/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/okta/okta.github.io/git/refs{/sha}","trees_url":"https://api.github.com/repos/okta/okta.github.io/git/trees{/sha}","statuses_url":"https://api.github.com/repos/okta/okta.github.io/statuses/{sha}","languages_url":"https://api.github.com/repos/okta/okta.github.io/languages","stargazers_url":"https://api.github.com/repos/okta/okta.github.io/stargazers","contributors_url":"https://api.github.com/repos/okta/okta.github.io/contributors","subscribers_url":"https://api.github.com/repos/okta/okta.github.io/subscribers","subscription_url":"https://api.github.com/repos/okta/okta.github.io/subscription","commits_url":"https://api.github.com/repos/okta/okta.github.io/commits{/sha}","git_commits_url":"https://api.github.com/repos/okta/okta.github.io/git/commits{/sha}","comments_url":"https://api.github.com/repos/okta/okta.github.io/comments{/number}","issue_comment_url":"https://api.github.com/repos/okta/okta.github.io/issues/comments{/number}","contents_url":"https://api.github.com/repos/okta/okta.github.io/contents/{+path}","compare_url":"https://api.github.com/repos/okta/okta.github.io/compare/{base}...{head}","merges_url":"https://api.github.com/repos/okta/okta.github.io/merges","archive_url":"https://api.github.com/repos/okta/okta.github.io/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/okta/okta.github.io/downloads","issues_url":"https://api.github.com/repos/okta/okta.github.io/issues{/number}","pulls_url":"https://api.github.com/repos/okta/okta.github.io/pulls{/number}","milestones_url":"https://api.github.com/repos/okta/okta.github.io/milestones{/number}","notifications_url":"https://api.github.com/repos/okta/okta.github.io/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/okta/okta.github.io/labels{/name}","releases_url":"https://api.github.com/repos/okta/okta.github.io/releases{/id}","deployments_url":"https://api.github.com/repos/okta/okta.github.io/deployments","created_at":"2013-06-25T23:22:38Z","updated_at":"2017-06-19T02:06:50Z","pushed_at":"2017-06-27T19:34:57Z","git_url":"git://github.com/okta/okta.github.io.git","ssh_url":"git@github.com:okta/okta.github.io.git","clone_url":"https://github.com/okta/okta.github.io.git","svn_url":"https://github.com/okta/okta.github.io","homepage":"http://developer.okta.com/","size":86171,"stargazers_count":22,"watchers_count":22,"language":"HTML","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":67,"mirror_url":null,"open_issues_count":23,"forks":67,"open_issues":23,"watchers":22,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/okta/okta.github.io/pulls/986"},"html":{"href":"https://github.com/okta/okta.github.io/pull/986"},"issue":{"href":"https://api.github.com/repos/okta/okta.github.io/issues/986"},"comments":{"href":"https://api.github.com/repos/okta/okta.github.io/issues/986/comments"},"review_comments":{"href":"https://api.github.com/repos/okta/okta.github.io/pulls/986/comments"},"review_comment":{"href":"https://api.github.com/repos/okta/okta.github.io/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/okta/okta.github.io/pulls/986/commits"},"statuses":{"href":"https://api.github.com/repos/okta/okta.github.io/statuses/72b76c42d7a1e9e0441f055d9f18cd0b5eb8e216"}}}}
{"actor":{"display_login":"larsjohansen-okta"}}