सत्रों का उपयोग किए बिना लॉगिन कार्यान्वयन प्राप्त करना


9

Wordpress सत्र का उपयोग नहीं करता है।

मैं हमेशा सोचता था कि उपयोगकर्ता द्वारा पेज से पेज पर जाने पर उपयोगकर्ता की स्थिति को बनाए रखने के लिए WP किस तंत्र का उपयोग करता है?

जवाबों:


12

यह नंगे कुकीज़ का उपयोग करता है और लॉगिन राज्य सूचना ग्राहक पक्ष को संग्रहीत करता है।

यहां छवि विवरण दर्ज करें

+

यहां छवि विवरण दर्ज करें

=

wordpress_7339a175323c25a8547b5a6d26c49afa = yourusername% 7C1457109155% 7C170f103ef3dc57cdb1835662d97c1e13;

ये सभी कुकीज़ और नमक कहाँ से आते हैं?

नमक आपके wp-config.php फ़ाइल में है:

/**#@+
 * Authentication Unique Keys and Salts.
 *
 * Change these to different unique phrases!
 * You can generate these using the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service}
 * You can change these at any point in time to invalidate all existing cookies. This will force all users to have to log in again.
 *
 * @since 2.6.0
 */
define('AUTH_KEY',         'put your unique phrase here');
define('SECURE_AUTH_KEY',  'put your unique phrase here');
define('LOGGED_IN_KEY',    'put your unique phrase here');
define('NONCE_KEY',        'put your unique phrase here');
define('AUTH_SALT',        'put your unique phrase here');
define('SECURE_AUTH_SALT', 'put your unique phrase here');
define('LOGGED_IN_SALT',   'put your unique phrase here');
define('NONCE_SALT',       'put your unique phrase here');

अद्वितीय वाक्यांश एक क्रिप्टोग्राफिक हैश फ़ंक्शन में उपयोग किए जाते हैं

प्रमाणीकरण कुकी, जिसका नाम AUTH_COOKIE के अंदर संग्रहीत किया जाता है, जो डिफ़ॉल्ट-constants.php में सेट किए गए साइटर्ल के md5 योग के साथ "wordpress_" को मिलाकर बनाया जाता है। यह डिफ़ॉल्ट व्यवहार है और आपके कॉन्स्टेंट फ़ाइल के अंदर से, कुछ स्थिरांक को सेट करके ओवरराइड किया जा सकता है।

प्रमाणीकरण कुकी उपयोगकर्ता नाम का एक संघटन बनाती है, एक टाइमस्टैम्प जब तक प्रमाणीकरण कुकी मान्य नहीं होती है। और एक HMAC, जो एक TL के खींचे जाने वालों के लिए एक कुंजी-पक्षपाती हैश की तरह होता है; अभी DR। तीन वर्णों को पाइप वर्ण से समेटा जाता है |

यहां बताया गया है कि एचएमएसी का निर्माण कैसे किया जाता है:

$hash = hash_hmac('md5', $username . '|' . $expiration, wp_hash($username . substr($user->user_pass, 8, 4) . '|' . $expiration, $scheme));

क्या यह सुरक्षित है?

इस लेख के अनुसार, जहां से इस उत्तर की अधिकांश जानकारी प्राप्त हुई, उसमें 30 हैकरों को भेजने के लिए एक हैकर को हफ़्ते भर का समय लगेगा, अगर वे जानते थे कि आपका अनूठा वाक्यांश क्या है और 200,000,000,000,000,000,000,000,000,000,000 बार कठिन है यदि आपकी कुंजी अद्वितीय है।


क्रिस। क्या सत्र बिल्कुल समान नहीं हैं? क्लाइंट को क्लाइंट साइट पर कुकी की आवश्यकता होती है और सर्वर यह पहचानने के लिए उपयोग करता है कि वह किस उपयोगकर्ता के साथ काम कर रहा है। मैं यह नहीं देखता कि सत्र आधारित कार्यान्वयन और इसके बीच क्या अंतर है।
औसत जो

2
मुझे अचानक भूख लगी है।
केविन

2
PHP सत्र स्टोर और $ _SESSION सुपर ग्लोबल के अंदर लॉगिन जानकारी ट्रैक करता है। जब आप अपना ब्राउज़र बंद करते हैं तो एक सत्र समाप्त हो जाता है। WordPress Auth कुकी बहुत अधिक दिनों या सप्ताह तक चलती है। देखें: tuxradar.com/practicalphp/10/1/0
Chris_O

0

कुकीज़ सत्र डेटा के केवल क्लाइंट-साइड स्टोरेज हैं ... वर्डप्रेस कुकीज़

वास्तव में, किसी के पास सत्र के बिना कुकीज़ हो सकती हैं, लेकिन कुकीज़ के बिना कोई सत्र नहीं।


मुझे डर है कि तुम उस पर गलत मर रहे हो। वर्डप्रेस सत्रों का उपयोग नहीं करता है।
औसत जो

PHP कुकीज़ PHP सत्रों का हिस्सा हैं - भले ही WP शायद सत्र डेटा भंडारण के लिए सर्वर-साइड सत्र का उपयोग नहीं कर सकता है (क्रम में कुछ भद्दे साझा होस्ट के साथ संगत होने के लिए)।
मार्टिन जेइटलर

मुझे यकीन नहीं है कि आपका क्या मतलब है। Php में सत्रों का उपयोग करने के लिए, आपको session_start()स्पष्ट रूप से उपयोग करके अपने पृष्ठ के शीर्ष पर सत्रों को सक्षम करना है । अब, जाहिर है, वर्डप्रेस के session_start()मूल में कहीं भी नहीं है । देखें कि आपकी अंतिम टिप्पणी से मैं कहां भ्रमित हो रहा हूं?
औसत जो

यह PHP सत्रों का सिर्फ मूल सिद्धांत है ... कि session_start () सर्वर-साइड स्टोरेज को सक्षम करता है जबकि setcookie () सत्र डेटा का क्लाइंट-साइड संग्रहण सक्षम करता है। शायद सिर्फ इस विचार से छुटकारा पाएं कि सत्र और कुकीज़ पूरी तरह से अलग हैं - केवल वास्तविक अंतर भंडारण स्थान है।
मार्टिन ज़ेटलर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.