1"use strict";(self.webpackChunkrabbitmq_website=self.webpackChunkrabbitmq_website||[]).push([["2026"],{36907(e,t,o){o.r(t),o.d(t,{metadata:()=>s,default:()=>d,frontMatter:()=>r,contentTitle:()=>i,toc:()=>l,assets:()=>c});var s=JSON.parse('{"id":"oauth2-examples-google","title":"Use Google as OAuth 2.0 server","description":"\x3c!--","source":"@site/versioned_docs/version-4.2/oauth2-examples-google.md","sourceDirName":".","slug":"/oauth2-examples-google","permalink":"/docs/4.2/oauth2-examples-google","draft":false,"unlisted":false,"editUrl":"https://github.com/rabbitmq/rabbitmq-website/tree/main/versioned_docs/version-4.2/oauth2-examples-google.md","tags":[],"version":"4.2","frontMatter":{"title":"Use Google as OAuth 2.0 server","displayed_sidebar":"docsSidebar"},"sidebar":"docsSidebar","previous":{"title":"Microsoft Entra ID","permalink":"/docs/4.2/oauth2-examples-entra-id/"},"next":{"title":"Keycloak","permalink":"/docs/4.2/oauth2-examples-keycloak"}}'),n=o(74848),a=o(28453);let r={title:"Use Google as OAuth 2.0 server",displayed_sidebar:"docsSidebar"},i="Use Google as OAuth 2.0 server",c={},l=[];function u(e){let t={a:"a",code:"code",h1:"h1",header:"header",p:"p",strong:"strong",...(0,a.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(t.header,{children:(0,n.jsx)(t.h1,{id:"use-google-as-oauth-20-server",children:"Use Google as OAuth 2.0 server"})}),"\n",(0,n.jsx)(t.p,{children:(0,n.jsx)(t.strong,{children:"Google is not supported"})}),"\n",(0,n.jsx)(t.p,{children:"The main reason is because it does not issue JWT access tokens\nbut opaque access tokens. To support opaque access tokens, RabbitMQ would have to issue an\nexternal HTTP request to convert the opaque access token into a JWT access token."}),"\n",(0,n.jsxs)(t.p,{children:["Under the ",(0,n.jsx)(t.a,{href:"https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/next/conf/google",children:(0,n.jsx)(t.code,{children:"/conf/google"})}),' folder you can find the configuration used to connect the\nRabbitMQ management UI with Google OAuth 2.0 endpoints. With this configuration,\nyou can get to a point where the user is authenticated by Google, and eventually\nyou get the error message in the RabbitMQ Management UI "Not Authorized".']}),"\n",(0,n.jsx)(t.p,{children:"The reason is because RabbitMQ cannot validate the access token because it is invalid."})]})}function d(e={}){let{wrapper:t}={...(0,a.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(u,{...e})}):u(e)}},28453(e,t,o){o.d(t,{R:()=>r,x:()=>i});var s=o(96540);let n={},a=s.createContext(n);function r(e){let t=s.useContext(a);return s.useMemo(function(){return"function"==typeof e?e(t):{...t,...e}},[t,e])}function i(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:r(e.components),s.createElement(a.Provider,{value:t},e.children)}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.