在WSO2 EI中使用基本身份验证处理程序保护API

马赫杜什种族

我使用的API充当后端服务和外部客户端之间的网关。我正在尝试使用用户/密码基本编码通过基本身份验证来保护对我的API的访问。在遵循了一些指南之后,我在API中添加了处理程序部分,以管理auth模块。

我尝试了本节:

<handlers>
        <handler class="org.wso2.rest.BasicAuthHandler"/>
    </handlers>

身份验证处理程序对我来说很好,但即使我更改了用户admin的密码,也只能使用admin / admin凭据。如何添加用户并让他使用具有特定凭据的API?

Pramodya Mendis

我按照以下步骤使用WSO2 EI管理控制台创建了一个用户。

  1. 点击左侧菜单标签中的配置,然后点击用户和角色下的添加
  2. 选择添加新用户
  3. 输入用户名和密码,然后单击下一步。
  4. 选择用户角色,然后单击完成(我选择了管理员权限)

然后我按照1中所述部署了以下API

<api xmlns="http://ws.apache.org/ns/synapse" name="StockQuoteAPI" 

context="/stockquote">
   <resource methods="GET" uri-template="/view/{symbol}">
      <inSequence>
         <payloadFactory media-type="xml">
            <format>
               <m0:getQuote xmlns:m0="http://services.samples">
                  <m0:request>
                     <m0:symbol>$1</m0:symbol>
                  </m0:request>
               </m0:getQuote>
            </format>
            <args>
               <arg evaluator="xml" expression="get-property('uri.var.symbol')"/>
            </args>
         </payloadFactory>
         <header name="Action" scope="default" value="urn:getQuote"/>
         <send>
            <endpoint>
               <address uri="http://localhost:9000/services/SimpleStockQuoteService" format="soap11"/>
            </endpoint>
         </send>
      </inSequence>
      <outSequence>
         <send/>
      </outSequence>
      <faultSequence/>
   </resource>
   <handlers>
    <handler class="org.wso2.carbon.integrator.core.handler.RESTBasicAuthHandler"/>
   </handlers>
</api>

然后,我可以使用带有新用户名/密码的邮递员发送请求。

在此处输入图片说明

1 https://docs.wso2.com/display/EI650/Applying+Security+to+an+API#ApplyingSecuritytoanAPI-BasicAuthUsingaBasicAuthhandler

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章