Skip to content

Latest commit

 

History

History
70 lines (54 loc) · 2.41 KB

File metadata and controls

70 lines (54 loc) · 2.41 KB

认证和鉴权

系统提供了灵活的认证和鉴权的扩展机制,内置了基于令牌的认证和鉴权

说明:下面示例中采用 <joyrpc/> 标签 表示JOYRPC中的schema。

1 在建立会话的时候进行身份认证

1.1 服务提供者启用身份认证

<joyrpc:provider id="demoService" interface="io.joyrpc.service.DemoService" alias="joyrpc-demo">
    <joyrpc:parameter key="identification" value="token"/>
    <joyrpc:parameter key="authentication" value="token"/>
    <joyrpc:parameter key="token" value="${token}" hide="true" />
</joyrpc:provider>
参数 默认值 说明
identification 身份提供者扩展实现名称,和消费者保持一致
authentication 身份认证扩展实现名称,系统内置了"token"实现
.token "token"身份认证扩展实现需要的令牌信息

1.2 消费者提供身份认证信息

<joyrpc:consumer id="demoService" interface="io.joyrpc.service.DemoService" alias="joyrpc-demo">
    <joyrpc:parameter key="identification" value="token"/>
    <joyrpc:parameter key="token" value="${token}" hide="true" />
</joyrpc:consumer>
参数 默认值 说明
identification 身份提供者扩展实现名称,系统内置了"token"实现
.token "token"身份提供者需要的令牌信息

2 细粒度方法鉴权

2.1 服务提供者方法鉴权

<joyrpc:provider id="demoService" interface="io.joyrpc.service.DemoService" alias="joyrpc-demo">
    <joyrpc:parameter key="authorization" value="token"/>
    <joyrpc:method name="sayHello">
      <joyrpc:parameter key="token" value="${token}" hide="true" />
    </joyrpc:method>
</joyrpc:provider>
参数 默认值 说明
authorization 鉴权扩展点实现名称,系统内置了"token"实现
.token "token"鉴权扩展实现需要的令牌信息

2.2 消费者方法鉴权

<joyrpc:consumer id="demoService" interface="io.joyrpc.service.DemoService" alias="joyrpc-demo">
    <joyrpc:method name="sayHello">
      <joyrpc:parameter key="token" value="${token}" hide="true" />
    </joyrpc:method>
</joyrpc:consumer>
参数 默认值 说明
.token 消费提供者鉴权需要的令牌信息