我正在开发一个项目,我需要通过Web服务公开它的一些方法,并且我正在使用Mule跟随RAML并实现安全性,已经提出了OAuth 2.0 . 我能够验证客户端的'client_id'和'client_secret',但为此我只在配置文件中提供了凭据 . 现在我需要从数据库中获取客户端详细信息 . 我尝试使用'preFlow-ref'并调用另一个流,我可以检索'client_id'和'client_secret',但不知道如何回调OAuth .

<spring:beans>
     <spring:bean id="oauthTokenStore" name="oauthTokenStore" class="database_connection.MyClientStore"/>
 </spring:beans>

 <oauth2-provider:config 
     name="oauth2Provider"
     providerName="TweetBook"
     supportedGrantTypes="CLIENT_CREDENTIALS"
     preFlow-ref="apiFlow1"
     host="localhost"
     port="8083"
     authorizationEndpointPath="tweetbook/api/authorize"
     accessTokenEndpointPath="tweetbook/api/token"
     scopes="READ_PROFILE WRITE_PROFILE READ_BOOKSHELF WRITE_BOOKSHELF">
 </oauth2-provider:config>

 <apikit:config name="Router" raml="src/main/api/api.raml" consoleEnabled="true" consolePath="console" doc:name="Router"/>

 <flow name="apiFlow1">          
     <set-variable variableName="client_id" value="1234567890abcd" doc:name="Client id"/>
     <logger message="entered DB flow" level="INFO" doc:name="Logger"/>
     <db:select config-ref="Generic_Database_Configuration" doc:name="Database">
         <db:dynamic-query><![CDATA[select client_secret from table1 where client_id = #[flowVars.client_Id]]]></db:dynamic-query>
    </db:select>
    <logger message="exit db flow" level="INFO" doc:name="Logger"/>
 </flow>