簡體   English   中英

Jwt 認證在 php

[英]Jwt authentication in php

On an app for user generated content that has a mobile and web version, if the app users two versions of the same backend php code, one version for the mobile and another version for the web which has jwt security implemented on (addressing of endpoints will根據每個后端代碼庫所在的目錄而有所不同,並且網絡的后端有一個 /jwt/ 目錄)。

從 web 或移動設備完成時,這將如何影響用戶上傳,web 和移動設備如何成功獲取通過 web 或移動設備上傳的用戶上傳文件?

這會在移動設備和 web 上的顯示上產生問題嗎?

如果上面的問題是肯定的,你會怎么解決呢?

JWT- JSON Web 簽名是一種加密機制,旨在使用令牌內容獨有的數字簽名來保護數據,以便我們能夠確定令牌的數據是否已被篡改。

智威湯遜的優勢-

  1. API 密鑰只是隨機字符串,而 JWT 包含信息和元數據,可以描述用戶身份、授權數據和令牌在時間框架或域內的有效性。
  2. JWT 不需要集中的發行或撤銷機構。
  3. OAUTH2 兼容。
  4. JWT 數據可查。
  5. JWT 有過期控制。

eg- eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE0MTY5MjkxMDksImp0aSI6ImFhN2Y4ZDBhOTVjIiwic2NvcGVzIjpbInJlcG8iLCJwdWJsaWNfcmVwbyJdfQ.XCEwpBGvOLma4TCOH36HEUHC17

庫 - composer 需要 firebase/php-jwt:dev-master composer 需要 zendframework/zend-config:~2.3 composer 需要 zendframework/zend-http:~2.3

Code-
<?php

/*

  • 代碼在這里... */

    /*

    • 提取來自配置文件的密鑰。
    • 最好的建議是成為二進制字符串的關鍵,並且
    • 將其編碼存儲在配置文件中。
    • 可以用 base64_encode(openssl_random_pseudo_bytes(64)) 生成;
    • 保持安全! 您需要確切的密鑰來驗證
    • 稍后令牌。 */ $secretKey = base64_decode($config->get('jwtKey'));

    /*

    $unencodedArray = ['jwt' => $jwt]; 回聲 json_encode($unencodedArray);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM