springboot-rsocketbasicauth-example:在RSocket和Spring Boot中使用身份驗證的示例

banq發表於2019-12-19

點選標題進入github

請按照以下步驟執行示例應用程式:

  1. 執行以下命令以啟動hello-service:
    ./gradlew :hello-service:bootRun
    
  2. 在新終端中,執行以下命令將請求傳送到不安全的hello端點:
    ./gradlew :hello-client:bootRun --args="hello Bob"
    
    如果成功,您將看到以下響應:
    2019-12-18 11:02:55.038 INFO 3540 --- [ main] e.client.hello.HelloClientApplication : Sending message without Basic Auth metadata... 2019-12-18 11:02:55.065 INFO 3540 --- [ main] e.client.hello.HelloClientApplication : Response: Hello, Bob, from unsecured method
    
  3. 接下來,執行以下命令將請求傳送到安全hello.secure端點:
    ./gradlew :hello-client:bootRun --args="hello.secure Bob"
    
    您將收到一個,io.rsocket.exceptions.ApplicationErrorException: Access Denied因為您沒有提供有效的替代。
  4. 接下來,執行以下命令將請求傳送到安全hello.secure端點,但是這次提供有效的替代:
    ./gradlew :hello-client:bootRun --args="--username=admin --password=password hello.secure Bob"
    
    如果成功,您將看到以下響應: 
    2019-12-18 11:07:12.171  INFO 3575 --- [           main] e.client.hello.HelloClientApplication    : Sending message with Basic Auth metadata... 2019-12-18 11:07:12.284  INFO 3575 --- [           main] e.client.hello.HelloClientApplication    : Response: Hello, Bob, from secured method
    

相關文章