トークンに関する質問があります。セキュリティ上の目的でランダムな文字が使用されていることを理解していますが、どのように動作するのですか、保護するのは何ですか?フォームと認証用のPHPトークン
答えて
認証メカニズムは、フォームが表示されたときにトークンを作成し、サーバー側に格納しました。 また、認証メカニズムはトークンをフォームの非表示入力として追加します。あなたがそれを送信すると、サーバー側のストレージでauthシステムチェックが行われます。 トークンが見つかった場合、認証プロセスは続行され、トークンは削除されています。
スパム対策アクションスクリプトから保護します。
例ログアウトURLを使用して:
<?php
// Generate token
$logout_token = md5(microtime().random(100, 999));
session_start();
// Store token in session
if (!is_array($_SESSION['logout_tokens']) {
$_SESSION['logout_tokens'] = array();
}
$_SESSION['logout_tokens'][] = $logout_token;
?>
<a href="/logout/?logout_token=<?= $logout_token ?>">logout</a>
スクリプト、その処理ログアウト:トークンがクロスsite_request_forgeryを保護するために追加され
<?php
$done = false;
if (!empty($_GET['logout_token'])) {
// Get token from url
$logout_token = $_GET['logout_token'];
session_start();
if (!is_array($_SESSION['logout_tokens']) {
$_SESSION['logout_tokens'] = array();
}
// Search get token in session (server-side storage)
if (($key = array_search($logout_token, $_SESSION['logout_tokens'], true)) !== false) {
// Remove used token from storage
unset($_SESSION['logout_tokens'][$key]);
// Do logout
$done = true;
}
}
if ($done === false) {
echo "Something went wrong.";
}
トークンがURLパラメータとして渡されるときはどうでしょうか。それはどのように機能するのですか? –
要求の検証に使用されるトークン。これは、サーバー側で作成することも、要求パラメーターから作成することもできます。しかし、あなたが良い保護をしたいなら、あなたはトークン生成メカニズムを他人から隠すべきです。 サーバーが読み取ることができる方法で渡すことができます。 – Electronick
URLパラメータとして使用するときの動作例を教えてください。例:http://www.example.com/logout.php?hash=6556jhntrh67&logout=true –
- 1. ASP.NET用のWindows認証とフォーム認証
- 2. トークン認証とCookie
- 3. フォーム認証 - トークンをコントローラに送信
- 4. Windows認証とフォーム認証
- 5. "+"の認証トークン
- 6. APIのスプリングセキュリティとトークン認証
- 7. Androidとトークンの認証
- 8. 認証トークン - セッション認証
- 9. モバイルデバイス用のPHPを使用したトークン認証
- 10. PHP RESTクライアントによるトークン認証
- 11. Rails認証トークンとFacebook
- 12. JWTトークンとOwin認証
- 13. スプリングブート - トークン認証
- 14. HTTP認証トークン
- 15. トークン認証のテスト
- 16. Java認証でのGoogle認証httpトークン
- 17. 認証トークンとしてオプションのomniauthトークンを使用して、deviseでhttp認証を使用する方法
- 18. Azure AD認証とフォーム認証の併用
- 19. フォーム認証とSSO
- 20. Webサイトでの認証用USBトークン
- 21. トークンを使用したサービスベースの認証
- 22. REST API認証トークン
- 23. WCFカスタム認証 - トークン
- 24. nodejsパスポート認証トークン
- 25. Emberシンプル認証トークン認証ツール
- 26. deviseトークン認証トークンの作成
- 27. ASP.net Windows認証とActiveDirectoryMembershipProviderを使用したフォーム認証
- 28. ASP.NET Web APIを使用した基本認証とフォーム認証
- 29. トークンのRailsによる認証と
- 30. Laravelパスポート認証とトークンの生成
、またこれが、attactするための唯一の方法ではありませんSQLインジェクション、XSS、http://en.wikipedia.org/wiki/Cross-site_request_forgeryです。また1つのPHP実装http://csrf.htmlpurifier.org/ –
PHPでトークンの例とその使い方を教えてください。 –