2017-01-19 38 views
0

我已通過在依賴項中包含spring-boot-starter-security來保護Spring Boot Application(默認配置)。 我需要訪問它使用基本授權使用Base64格式與UTF-8字符集。 我是春季安全新手,不知道該怎麼做!請求應該是這樣的:發送Curl http請求以確保Spring Boot應用程序的安全

curl -H "Content-Type: application/json" -X POST -d '{"XXX":["XXX", "XXX", "XXX", "XXX", "XXX", "XXX"]}' -H "Authorization: Basic b3B0dXM6Y2FuZGlkYXRlcw==" http://localhost:8080/XXX-api/search 

我甚至試過這樣:

curl -H "Content-Type: application/json" -H 'Authorization:Basic user:0bf582f 
0-6988-42ee-9f31-d993cd83ad7b' -X POST -d '{"XXX":["XXX", "XXX", "XXX 
", "XXX", "XXX", "XXX"]}' http://localhost:8080/XXX-api/search 

,但得到這個錯誤:

{"timestamp":1484797035123,"status":401,"error":"Unauthorized","message":"Failed 
to decode basic authentication token","path":"/XXX-api/search"} 

有人能幫助我,告訴我如何產生curl請求的授權部分?

注意:當使用瀏覽器發送請求時,它要求我輸入用戶名和密碼,然後工作正常!

在此先感謝!

回答

0

您應該base64編碼username:password,例如, user:0bf582f0-6988-42ee-9f31-d993cd83ad7bbase 64 online

Base64編碼:用戶:0bf582f0-6988-42ee-9f31-d993cd83ad7b
結果:dXNlcjowYmY1ODJmMC02OTg4LTQyZWUtOWYzMS1kOTkzY2Q4M2FkN2I

然後發送具有編碼的用戶名密碼請求

curl -H "Content-Type: application/json" -H 'Authorization:Basic dXNlcjowYmY1ODJmMC02OTg4LTQyZWUtOWYzMS1kOTkzY2Q4M2FkN2I' -X POST -d '{"XXX":["XXX", "XXX", "XXX", "XXX", "XXX", "XXX"]}'