WSO2 IS 4.6.0 报错:Access token identifier is not present in
最近用client 向 IS判断access token是否合法,在使用编写代码测试时,发现OAuth2TokenValidationServiceStub.validate()一直失败。 代码如下: OAuth2TokenValidationServiceStub stub = null;String serviceURL = OAuth2ClientServlet.serverUrl + OAuth2T
最近用client 向 IS判断access token是否合法,在使用编写代码测试时,发现OAuth2TokenValidationServiceStub.validate()一直失败。
代码如下:
<span> OAuth2TokenValidationServiceStub stub = null; String serviceURL = OAuth2ClientServlet.serverUrl + "OAuth2TokenValidationService"; try { stub = new OAuth2TokenValidationServiceStub(null, serviceURL); } catch (AxisFault e) { // TODO Auto-generated catch block e.printStackTrace(); } CarbonUtils.setBasicAccessSecurityHeaders(OAuth2ClientServlet.userName, OAuth2ClientServlet.password, true, stub._getServiceClient()); ServiceClient client = stub._getServiceClient(); Options options = client.getOptions(); options.setTimeOutInMilliSeconds(TIMEOUT_IN_MILLIS); options.setProperty(HTTPConstants.SO_TIMEOUT, TIMEOUT_IN_MILLIS); options.setProperty(HTTPConstants.CONNECTION_TIMEOUT, TIMEOUT_IN_MILLIS); options.setCallTransportCleanup(true); options.setManageSession(true); OAuth2TokenValidationRequestDTO oauthReq = new OAuth2TokenValidationRequestDTO(); oauthReq.setAccessToken(accessToken); oauthReq.setTokenType("bearer"); try { bool resp = stub.validate(params); } catch (RemoteException e) { // TODO Auto-generated catch block e.printStackTrace(); } </span>
后google,发现:http://stackoverflow.com/questions/20796574/oauth-validation-fails-for-valid-token-in-wso2-is-4-6
I faced the same problem with OAuth Mediator in Wso2 ESB 4.8.0 accessing Wso2 Identity Server 4.6.0 via Oauth2 validation web service. With Identity server 4.5.0 it works fine.The mediator code invokes
the client stub passing the accessToken as plain string.
The error message returned by validation service is Access token identifier is not present in the validation request.
To answer your question you should use the bundle org.wso2.carbon.identity.oauth.stub in version 4.2.2. It defines a class org.wso2.carbon.identity.oauth2.stub.dto.OAuth2TokenValidationRequestDTO_OAuth2AccessToken which should be used as a parameter for the
OAuth2TokenValidationRequestDTO.setAccessToken method. The dto object can the be used as parameter for the OAuth2TokenValidationServiceStub.validate method.
居然是版本问题!
<span> OAuth2TokenValidationRequestDTO oauthReq = new OAuth2TokenValidationRequestDTO(); OAuth2TokenValidationRequestDTO_OAuth2AccessToken oauthReq_token = new OAuth2TokenValidationRequestDTO_OAuth2AccessToken(); oauthReq_token.setTokenType("bearer"); oauthReq_token.setIdentifier(accessToken); oauthReq.setAccessToken(oauthReq_token);</span>

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Deepseek ne peut pas convertir les fichiers directement en PDF. Selon le type de fichier, vous pouvez utiliser différentes méthodes: documents communs (Word, Excel, PowerPoint): utilisez Microsoft Office, LibreOffice et d'autres logiciels à exporter sous forme de PDF. Image: Enregistrer sous le nom de PDF à l'aide d'une visionneuse d'image ou d'un logiciel de traitement d'image. Pages Web: Utilisez la fonction "Imprimer en PDF" du navigateur ou l'outil Web dédié à PDF. Formats peu communs: trouvez le bon convertisseur et convertissez-le en PDF. Il est crucial de choisir les bons outils et d'élaborer un plan basé sur la situation réelle.

Oracle peut lire les fichiers dbf en suivant les étapes suivantes : créer une table externe et référencer le fichier dbf ; interroger la table externe pour récupérer les données dans la table Oracle ;

Hier, BotanixLabs a annoncé avoir finalisé un financement total de 11,5 millions de dollars américains, avec la participation de Polychain Capital, Placeholder Capital et d'autres. Le financement sera utilisé pour construire l’équivalent EVM décentralisé de BTCL2Botanix. Spiderchain combine la facilité d'utilisation d'EVM avec la sécurité de Bitcoin. Depuis la mise en ligne du testnet en novembre 2023, il y a eu plus de 200 000 adresses actives. Odaily analysera le mécanisme caractéristique de Botanix et le processus d'interaction testnet dans cet article. Botanix Selon la définition officielle, Botanix est un L2EVM décentralisé et complet de Turing construit sur Bitcoin et se compose de deux composants principaux : Ethereum Virtual Machine

Résolvez le problème de l'interface tiers renvoyant 403 dans l'environnement Node.js. Lorsque nous utilisons Node.js pour appeler des interfaces tierces, nous rencontrons parfois une erreur de 403 à partir de l'interface renvoyant 403 ...

L'impact du partage des connexions redis dans Laravel Framework et sélectionnez Méthodes Lors de l'utilisation de Laravel Framework et Redis, les développeurs peuvent rencontrer un problème: grâce à la configuration ...

L'avantage du multithreading est qu'il peut améliorer les performances et l'utilisation des ressources, en particulier pour traiter de grandes quantités de données ou effectuer des opérations longues. Il permet d'effectuer plusieurs tâches simultanément, améliorant l'efficacité. Cependant, trop de threads peuvent conduire à une dégradation des performances, vous devez donc sélectionner soigneusement le nombre de threads en fonction du nombre de cœurs CPU et de caractéristiques de tâche. De plus, la programmation multi-thread implique des défis tels que les conditions de blocage et de race, qui doivent être résolues à l'aide de mécanismes de synchronisation, et nécessite une connaissance solide de la programmation simultanée, pesant les avantages et les inconvénients et les utilisant avec prudence.

Comment éviter l'interface tiers renvoyant 403 erreur dans l'environnement de nœud. Lorsque vous appelez l'interface de site Web tiers à l'aide de Node.js, vous rencontrez parfois le problème de la retournement de l'erreur 403. � ...

1. Recherchez dans le menu Démarrer pour trouver la page du Panneau de configuration 2. Changez ensuite l'affichage en Catégorie dans le Panneau de configuration et cliquez sur Options système et sécurité 3. Recherchez et cliquez sur le bouton Autoriser l'accès à distance sous Système 4. Dans la fenêtre contextuelle Cliquez sur la colonne Propriétés du système distant dans la fenêtre, cochez la case Autoriser la connexion à distance à cet ordinateur et cliquez sur OK pour enregistrer.
