擅长:python、mysql、java
<p>我想补充一下这方面的知识,以防其他人陷入困境。在</p>
<p>直接从keycloop realm->;Keys->;public key->;(view)复制的公钥值不起作用。取而代之的是,我必须通过使用URL获取由keyclope为领域公开的公钥:</p>
<pre><code>https://<< my keycloak url >>/auth/realms/<< my realm >>/
</code></pre>
<p>此url返回json,其中包含域“my realm”的“public_key”值。以所选答案中建议的方式使用公钥的这个</em>值。在</p>
<p>但是,您还需要确保解码调用的受众值是正确的。对于我来说,值“belmgr”。我用智威汤逊,解码access_令牌,在有效负载数据中,我发现:</p>
^{pr2}$
<p>使用“帐户”作为观众的工作。在</p>
<pre><code># wrong audience - FAIL
access_token_json = jwt.decode(access_token, public_key, audience='belmgr')
# right audience - SUCCESS
access_token_json = jwt.decode(access_token, public_key, audience='account')
</code></pre>