সঠিক raw রিকোয়েস্ট বডি থেকে স্বাক্ষর গণনা করুন। constant time-এ স্বাক্ষর তুলনা করুন।
সাইন করা ওয়েবহুক
সাইন করা ওয়েবহুক
ডেলিভারি, বাউন্স ও অভিযোগ ইভেন্ট HMAC-SHA256 দিয়ে সাইন হয়।
প্রাপকের প্রয়োজনীয়তা
আউটবাউন্ড নিয়ন্ত্রণ
Endpoint তৈরির জন্য HTTPS প্রয়োজন। Private, loopback, link-local, metadata, ক্রেডেনশিয়াল-বহনকারী, এবং অভ্যন্তরীণ target ব্লক করা হয় এবং dial করার সময় আবার resolve করা হয়। Redirect অনুসরণ করা হয় না। ডেলিভারিতে সীমাবদ্ধ timeout এবং retry প্রচেষ্টা ব্যবহার করা হয়।
বাস্তবায়িত নিয়ন্ত্রণ
সমর্থিত বাহ্যিক HTTP এবং SMTP সাবমিশন পথের জন্য TLS ঐচ্ছিক IP allowlist সহ hashed, scoped, মেয়াদ-সীমিত API কী
এনক্রিপশনের সীমানা
TLS একটি ট্রান্সপোর্ট এনক্রিপশন, end-to-end ইমেইল এনক্রিপশন নয়। প্রাপক প্রদানকারী ডেলিভার হওয়া বিষয়বস্তু প্রক্রিয়া করতে পারে। যেসব গ্রাহকের বার্তা-স্তরের গোপনীয়তা প্রয়োজন তাদের অবশ্যই S/MIME, PGP, বা অ্যাপ্লিকেশন-লেয়ার এনক্রিপশনের মতো একটি উপযুক্ত স্কিম যোগ করতে হবে।
signed = timestamp + "\0" + event_id + "\0" + raw_body
expected = HMAC-SHA256(webhook_secret, signed)
constant_time_compare(expected, Postline-Signature)