मेरे पास एक वेब सेवा है और हमारे क्लाइंट को उपयोग करने की आवश्यकता वाले पैरामीटर में से एक कस्टम कुंजी है। इस कुंजीरिवर्स हैश लुकअप क्वेरी
eg:
bce700635afccfd8690836f37e4b4e9cf46d9c08
तो SHA1 के हैश है जब ग्राहक हमारे वेब सेवा को कॉल मैं कुछ बातों की जांच करने के लिए है:
- सक्रिय ग्राहक
- ग्राहक वेब सेवा और सेवा के माध्यम से प्रस्तुत कर सकते हैं है
मैं एक प्रश्न है:
अब मेरी समस्या यह है
$sql = "SELECT permission, is_active FROM clients WHERE sha1(concat(id,key)) = '" . mysql_real_escape_string($key) . "'";
क्या मैं सही काम कर रहा हूं? या एक बेहतर तरीका है? धन्यवाद
आप मूल रूप से एक सत्र आईडी के रूप में कुंजी का उपयोग कर रहे हैं? यदि ऐसा है, तो आप PHP सत्रों का उपयोग करने के बजाय विचार कर सकते हैं। बहुत आसान और सुरक्षित। http://php.net/manual/en/features.sessions.php –
@ जोनाथन एम नहीं, कुंजी क्लाइंट आईडी + यादृच्छिक कुंजी का एक sha1 है (हम स्थानीय रूप से तालिका में स्टोर करते हैं) और हम ग्राहक को देते हैं। इसलिए जब हम अपनी साइट पर कॉल करते हैं तो उसे इसका उपयोग करने की आवश्यकता होती है जैसे: http://ws.domain.com/bce700635afccfd8690836f37e4b4e9cf46d9c08/ और वह उपयोगकर्ता नाम और पासवर्ड और अन्य चर पोस्ट करता है; –
@ErinTucker: यदि हैश में एक यादृच्छिक कुंजी शामिल है, तो आपकी क्वेरी में अभी 'sha1 (id) 'कैसे है? – ruakh