การเข้าถึงบริการ Alibaba Cloud Video on Demand (VOD): ตระหนักถึงการป้องกันการโจรกรรมและการเล่นออนไลน์ที่ราบรื่น

เมฆ 2026-05-28 阅读 12
1

เมื่อทำโครงการวิดีโอสิ่งที่ลำบากที่สุดไม่ใช่วิธีการเขียนโปรแกรมเล่นที่ส่วนหน้าแต่เป็นปัญหาการดำเนินการและการบำรุงรักษาที่สมจริงอย่างยิ่งสองประการ:

ค่าใช้จ่ายแบนด์วิดท์และการหยุดทำงาน: ไฟล์วิดีโอสามารถวางไว้บนเซิร์ฟเวอร์ของคุณเองได้หลายสิบหรือหลายร้อยเมกะไบต์หากคุณวางไว้บนเซิร์ฟเวอร์ของคุณโดยตรงระบบจะติดขัดหากคุณดูระบบในเวลาเดียวกันและค่าบริการข้อมูลเครือข่ายสาธารณะรายเดือนจะเป็นหลุมลึก

วิดีโอถูกขโมยและถูกแฮ็ก: เพื่อนหรือผู้ใช้ที่ประสงค์ร้ายบางรายคลิกขวาเพื่อคัดลอกลิงก์การเล่นวิดีโอในหน้าเว็บของคุณโดยตรงและโพสต์บนเว็บไซต์ของตนเองค่าแบนด์วิดท์ทั้งหมดที่คุณจ่ายไปทำให้เป็นชุดแต่งงานสำหรับคนอื่น

ในยุคคลาวด์ดั้งเดิมวิธีแก้ปัญหาที่ปลอดภัยที่สุดคือการโฮสต์วิดีโอไปยัง Alibaba Cloud

วิดีโอออนดีมานด์ (VOD,Video on Demand)

บริการ.

บทช่วยสอนของวันนี้ไม่ได้พูดถึงทฤษฎีทางเทคนิคที่ว่างเปล่าแต่เป็นสินค้าแห้งบริสุทธิ์โดยตรงนำคุณไปสู่วิธีการต่อสู้จริงที่มีเหตุผลที่สุด

รับการเล่นสตรีมวิดีโอแบบเร่งความเร็วและวางแนวป้องกันที่ตายแล้วสองแนวของ "Referer Anti-theft Chain URL Appraisal"

ล็อคสินทรัพย์วิดีโอของคุณอย่างสมบูรณ์

สถาปัตยกรรมหลัก: วิดีโอออนดีมานด์ทำงานอย่างไร?

ก่อนที่จะเริ่มใช้เวลา10วินาทีในการทำความเข้าใจลิงก์หลักของ VOD:

ข้อความธรรมดา

[อัปโหลดวิดีโอในพื้นหลัง] ──> [การแปลงรหัสอัตโนมัติ VOD] ──> [เก็บชิ้นส่วนใน OSS] ──> [แจกจ่ายไปยังโหนดขอบ CDN]

[เบราว์เซอร์ผู้ใช้] <── 3.รับ URL ที่ปลอดภัยและถอดรหัสในเครื่องเล่น ── [URL ที่ถูกต้องคำนวณโดยแบ็คเอนด์] <── 1.เริ่มคำขอเล่น

พูดง่ายๆก็คือวิดีโอไม่สามารถเล่นได้โดยตรงในภาพยนตร์ต้นฉบับ VOD จะทำลายวิดีโอของคุณโดยอัตโนมัติแปลงรหัสเป็นไฟล์สตรีมมิ่งมาตรฐานที่มีความคมชัดต่างกันจากนั้นส่งไปยังทุกส่วนของประเทศ

CDN (เครือข่ายการจัดส่งเนื้อหา)

โหนดเมื่อผู้ใช้เล่นมันจะดึงแคชของ CDN ที่อยู่ใกล้ๆโดยตรงซึ่งไม่เพียงแต่เร็วเท่านั้นแต่ยังไม่ใช้แบนด์วิดท์เซิร์ฟเวอร์ของคุณเองเลย

ขั้นตอนที่1: การกำหนดค่าฐานคอนโซล (3นาที)

บริการที่ซื้อใหม่เป็นกระดาษเปล่าเราจำเป็นต้องจับคู่ชื่อโดเมนและกลยุทธ์การแปลงรหัสก่อน

1.ผูกและแจกจ่ายชื่อโดเมน

วิดีโอออนดีมานด์ต้องผูกชื่อโดเมนของคุณเอง (ต้องยื่น) เป็น "ชื่อโดเมนการเล่นวิดีโอ" คุณไม่สามารถใช้ชื่อโดเมนทดสอบเริ่มต้นของ Alibaba Cloud ได้

ลงชื่อเข้าใช้คอนโซล Alibaba Cloud และค้นหาเพื่อป้อน "Video VOD on Demand"

ในเมนูด้านซ้ายให้คลิก "การจัดการการกำหนดค่า" $ \ rightarrow $ "แจกจ่ายการกำหนดค่าแบบเร่ง" $ \ rightarrow $ "การจัดการชื่อโดเมน"

คลิก "เพิ่มชื่อโดเมน" เลือก "การเร่งความเร็วตามความต้องการ" สำหรับประเภทธุรกิจและป้อนชื่อโดเมนย่อยของคุณ (เช่น video.yourname.com)

เมื่อสร้างเสร็จแล้ว Alibaba Cloud จะให้ที่อยู่ CNAME แก่คุณเอาที่อยู่นี้

ไปที่พื้นหลังการแก้ปัญหาชื่อโดเมนของคุณ (เช่น Alibaba Cloud DNS) และเพิ่มระเบียน CNAME เฉพาะเมื่อการวิเคราะห์มีผลการเร่ง CDN จะทำงานอย่างเป็นทางการ

2.การกำหนดค่าแม่แบบการแปลงรหัส (ที่สำคัญสำหรับการเล่นที่ราบรื่น)

วิดีโอต้นฉบับ (เช่น MP4ที่บันทึกด้วยโทรศัพท์มือถือ) มีขนาดใหญ่และอัตราบิตไม่คงที่ทำให้ติดขัดได้ง่ายในสภาพแวดล้อมที่มีเครือข่ายไม่ดีเราจำเป็นต้องปล่อยให้ระบบตัดมันโดยอัตโนมัติและลดปริมาณ

ในเมนูด้านซ้ายไปที่ "การตั้งค่าทั่วโลก" $ \ rightarrow $ "แปลงรหัสกลุ่มแม่แบบ"

คลิก "เพิ่มกลุ่มเทมเพลตการแปลงรหัส"

รูปแบบแพคเกจ: ขอแนะนำให้เลือก HLS (M3U8)

💡ทำไมต้องเลือก HLS/M3U8? การเล่น MP4ต้องรอให้ไฟล์ทั้งหมดดาวน์โหลดส่วนหนึ่งเพื่อสร้างดัชนีและรูปแบบ HLS คือการตัดวิดีโอเป็นชิ้นเล็กๆจำนวนนับไม่ถ้วนเป็นเวลา10วินาทีผู้ใช้ดาวน์โหลดมากแค่ไหนเมื่อเล่นไม่เพียงแต่เปิดในไม่กี่วินาทีแต่ยังกรอไปข้างหน้าและลองใหม่ได้อย่างราบรื่นมากและยังสามารถสลับความราบรื่นตามเครือข่ายโดยอัตโนมัติ

ตรวจสอบความคมชัดที่คุณต้องการ (เช่น SD, HD ประสิทธิภาพสูง) และคลิกบันทึก

ขั้นตอนที่2: วางแนวป้องกันสองแนวป้องกันที่ตายแล้ว (2นาที)

เมื่อชื่อโดเมนตรงกันคุณต้องใช้มาตรการรักษาความปลอดภัยทันทีหากคุณไม่ได้อยู่ในเครือข่ายป้องกันการโจรกรรมเมื่อชื่อโดเมนการเล่นของคุณถูกเปิดเผยทุกคนสามารถเข้าถึงการเข้าชมของคุณได้โดยตรง

แนวป้องกันแรก: Referer Anti-theft Chain (Anti-Xiaobai)

หลักการของมันคือการตรวจสอบ "ใครขอวิดีโอนี้" หากคำขอถูกส่งมาจาก Baidu หรือเว็บไซต์ขนาดเล็กของผู้อื่นให้ปฏิเสธโดยตรง

ในรายการ "การจัดการชื่อโดเมน" ให้คลิก "การกำหนดค่า" ทางด้านขวาของชื่อโดเมนที่คุณเพิ่งผูกไว้

คลิก "Access Control" $ \ rightarrow $ ทางด้านซ้ายเพื่อค้นหา "Referer Anti-theft Chain" แล้วคลิกแก้ไข

ประเภท: เลือก "รายการสีขาว"

รายชื่อผู้อ้างอิง: ป้อนชื่อโดเมนเว็บไซต์ของคุณเองทีละชื่อตัวอย่างเช่น:

อนุญาตให้ Referer ว่าง: หากคุณต้องการฝังวิดีโอของคุณในแอปบนอุปกรณ์เคลื่อนที่หรืออนุญาตให้ผู้ใช้เปิดโดยตรงในแถบที่อยู่ของเบราว์เซอร์ให้เลือก "ใช่" หากคุณจำกัดเฉพาะการดูในหน้าเว็บของคุณเองอย่างเคร่งครัดคุณต้องตรวจสอบ "ไม่".

แนวป้องกันที่สอง: การประเมิน URL (การป้องกันหลัก: วิธีการรักษาชีวิตหลัก)

การอ้างอิงสามารถปลอมแปลงได้ง่ายโดยแฮกเกอร์โดยการแก้ไข HTTP Header ในการล็อควิดีโออย่างสมบูรณ์คุณต้องเปิด

การประเมิน URL

หลังจากเปิดแล้วสตริงการเข้ารหัส (เช่น

?Auth_key = ประทับเวลา-ตัวเลขสุ่ม-MD5

)。สตริงการเข้ารหัสนี้ถูกคำนวณและสร้างขึ้นแบบไดนามิกโดยเซิร์ฟเวอร์แบ็คเอนด์ของคุณเองเมื่อผู้ใช้คลิกเพื่อเล่นและ

โดยปกติจะใช้ได้เพียง30นาที

。หลังจากหมดอายุแฮกเกอร์จะไม่สามารถเล่นได้แม้ว่าพวกเขาจะได้รับลิงก์ทั้งหมดก็ตาม

นอกจากนี้ในหน้า "การควบคุมการเข้าถึง" ของชื่อโดเมนให้เปลี่ยนไปที่แท็บ "การตรวจสอบ URL"

คลิกแก้ไขเพื่อเปลี่ยนสถานะเป็น "เปิด"

คีย์หลัก/คีย์สแตนด์บาย: อินพุตแบบสุ่ม

สตริงยาว (เช่น MySecretKey2026) คลิกบันทึกจำคีย์นี้ไว้มันเป็นคีย์ที่จะใช้ในโค้ดของเราในภายหลัง

เวลาที่ถูกต้องเริ่มต้นถูกตั้งค่าเป็น1800วินาที (30นาที)

ขั้นตอนที่3: Back-end Spring Boot สร้าง URL การพิสูจน์ตัวตนแบบไดนามิก (3นาที)

ตอนนี้เราต้องการบรรลุ: เมื่อผู้ใช้คลิกวิดีโอที่ส่วนหน้าส่วนหลังจะคำนวณลิงก์การเล่นที่ปลอดภัยตามเวลาผ่าน "คีย์หลัก" ในตอนนี้

1. นำเข้าข้อกำหนดพึ่งพิง

แนะนำเครื่องมือหลักของ Alibaba Cloud On Demand ในโครงการ Spring Boot ของคุณ:

<ความพึ่งพิง>

<GroupI d>org.apache.com mons</groupId>

<ArtifactId> commons-lang3</artifactId>

<Version> 3.12.0</version>

</dependency>

<ความพึ่งพิง>

<GroupId> commons-codec</groupId>

<ArtifactId> commons-codec</artifactId>

<Version> 1.15</version>

</dependency>

2.เขียนเครื่องมืออัลกอริทึมการตรวจสอบสิทธิ์

ไม่จำเป็นต้องแนะนำ SDK ขนาดใหญ่อย่างเป็นทางการที่หนักหน่วงโซลูชันการรับรองความถูกต้อง URL A ของ Alibaba Cloud เป็นอัลกอริทึมลายเซ็น MD5มาตรฐานคัดลอกรหัสสินค้าแห้งบริสุทธิ์ที่ฉันปรับปรุงให้คุณโดยตรง:

ขั้นตอนที่สาม: การพัฒนาคอมโพเนนต์นับถอยหลังด้วย Vue ฝั่งหน้าจอผู้ใช้ (1นาที)

ส่วนแบ็กเอนด์จัดการเรียบร้อยแล้วทางฟรонтเอนด์เราต้องป้องกันไม่ให้ผู้ใช้กดปุ่ม “ส่ง” อย่างรวดเร็วโดยจะต้องสร้างระบบนับถอยหลังมาตรฐานเป็นเวลา60วินาที

ที่นี่ใช้

Vue 3 (Composition API) Axios

ตัวอย่างเช่นขอนำเสนอโค้ดที่เข้าใจง่ายที่สุดโดยตรง:

<แม่แบบ>

<div class="กล่องข้อความสั้น">

<input type="text" v-model="phone" placeholder="โปรดป้อนหมายเลขโทรศัพท์มือถือ" />

<ตัวปุ่ม :disabled="isCounting" @click="handleSend">

{{ isCounting ? '${countdown} วินาทีแล้วจะขอใหม่': 'ขอรหัสยืนยัน' }}

</ปุ่ม>

</div>

</เทมเพลต>

<สคริปต์ตั้งค่า>

นำเข้า {ref} จาก 'vue';

นำเข้า axios จาก 'axios';

const phone = ref('');

const countdown = ref(60);

const isCounting = ref(false);

ให้ตัวจับเวลาเป็น null;

const handleSend = async () => {

ถ้าไม่ใช่ (/^1[3-9]\d{9}$/.test(phone.value)) {

แจ้งเตือน('โปรดป้อนหมายเลขโทรศัพท์มือถือที่ถูกต้อง');

กลับ;

}

ลอง {

// เรียกใช้ API ฝั่งเซิร์ฟเวอร์

Const res = await axios.post('/api/sms/send? โทรศัพท์=${โทรศัพท์ค่า}');

แจ้งเตือน(res.data);

// เปิดใช้งานการนับถอยหลัง

เริ่มนับถอยหลัง();

} รับผิดชอบ (ข้อผิดพลาด) {

แจ้งเตือน(error.response?. ข้อมูล || 'การร้องขอล้มเหลว');

}

};

const เริ่มต้นนับถอยหลัง = () => {

isCounting.value = true;

เวลาถอยหลัง.value = 60;

Timer = setInterval (

() => {

countdown.value--;

ถ้า (countdown.value น้อยกว่าหรือเท่ากับ0) {

clearInterval(timer);

isCounting.value = false;

}

}, 1000);

};

</script>

คู่มือหลีกเลี่ยงข้อผิดพลาดในสภาพแวดล้อมการผลิต (ประสบการณ์อันเจ็บปวดจากการปฏิบัติงานด้านโอเปอเรชันส์)

ระวังอินเทอร์เฟซอาจถูกแฮกเกอร์ “โจมตีด้วยข้อความสแปม”! ทันทีที่ API เปิดใช้งานแฮกเกอร์จะใช้สคริปต์อัตโนมัติส่งคำร้องไปยัง API /api/sms/send ของคุณอย่างรัวด้วยหมายเลขโทรศัพท์แบบสุ่มหลายหมื่นหมายเลขแค่คืนเดียวก็สามารถหักยอดเงินคงเหลือในบัญชีอาลีคลาวด์ของคุณจนหมดได้เลยมาตรการป้องกันขั้นเด็ดขาด: นอกจากการตั้งเวลาถอยหลัง60วินาทีที่ฝั่งหน้าจอและการใช้ Redis ที่ฝั่งเซิร์ฟเวอร์เพื่อจำกัดความถี่ของหมายเลขโทรศัพท์แต่ละเบอร์ให้อยู่ที่ไม่เกิน60วินาทีแล้วสำหรับ API ที่ใช้ส่ง SMS จำเป็นต้องบังคับให้มีการเพิ่ม “รหัสยืนยันแบบภาพ” หรือ “ระบบยืนยันมนุษย์–เครื่องจักรแบบเลื่อนลาก” เข้าไปด้วยเฉพาะคำขอที่ถูกต้องซึ่งประกอบภาพจิ๊กซอว์สำเร็จเท่านั้นระบบหลังบ้านจึงจะส่งข้อความไป

ทำให้เกิดข้อผิดพลาดในการรายงาน "การจำกัดความถี่" ของ Alibaba Cloud Alibaba Cloud SMS มาพร้อมกับชุดกลไกการควบคุมการไหลและการป้องกันการรูด (หมายเลขโทรศัพท์มือถือเดียวไม่เกิน1หมายเลขภายใน1นาทีไม่เกิน5หมายเลขภายใน1ชั่วโมงและไม่เกิน10หมายเลขใน1วัน). หากคุณทดสอบในเครื่องของตัวเองแล้วส่งข้อความหาตัวเองอย่างรัวๆแล้วจู่ๆก็เกิดข้อผิดพลาด isv.BUSINESS_LIMIT_CONTROL อย่าเพิ่งตกใจไม่ใช่ว่าโค้ดเขียนผิดแต่เป็นเพราะคุณถูกจำกัดอัตราการเรียกใช้งานโดย Alibaba Cloud ซึ่งจะถูกปลดล็อกให้อัตโนมัติในวันพรุ่งนี้

เมื่อผ่านกระบวนการแบบครบวงจรทั้งฝั่งไคลเอนต์และเซิร์ฟเวอร์แล้วแอปพลิเคชันแบบไมโครเซอร์วิสของคุณก็จะมีความสามารถในการแจ้งเตือนด้วยข้อความสั้นที่เป็นไปตามมาตรฐานและความปลอดภัยอย่างเป็นทางการรีบจัดเตรียมแล้วไปลองดูกันเลย!

cloud
← 返回新闻中心