Terraform 0.11

cloudflare_rate_limit




terraform

cloudflare_rate_limit

किसी दिए गए क्षेत्र के लिए एक क्लाउडफ़ेयर दर सीमा संसाधन प्रदान करता है। इसका उपयोग आपके द्वारा जोन-वाइड प्राप्त ट्रैफ़िक को सीमित करने, या अधिक विशिष्ट प्रकार के अनुरोधों / प्रतिक्रियाओं का मिलान करने के लिए किया जा सकता है।

उदाहरण उपयोग

resource "cloudflare_rate_limit" "example" {
  zone = "${var.cloudflare_zone}"
  threshold = 2000
  period = 2
  match {
    request {
      url_pattern = "${var.cloudflare_zone}/*"
      schemes = ["HTTP", "HTTPS"]
      methods = ["GET", "POST", "PUT", "DELETE", "PATCH", "HEAD"]
    }
    response {
      statuses = [200, 201, 202, 301, 429]
      origin_traffic = false
    }
  }
  action {
    mode = "simulate"
    timeout = 43200
    response {
      content_type = "text/plain"
      body = "custom response body"
    }
  }
  disabled = false
  description = "example rate limit for a zone"
  bypass_url_patterns = ["${var.cloudflare_zone}/bypass1","${var.cloudflare_zone}/bypass2"]
}

तर्क संदर्भ

निम्नलिखित तर्क समर्थित हैं:

  • zone - (आवश्यक) डीएनएस क्षेत्र को सीमित करने के लिए दर लागू करने के लिए।
  • threshold - (आवश्यक) वह सीमा जो दर सीमा शमन को ट्रिगर करती है, अवधि के साथ जोड़ती है। प्रति अवधि सीमा (न्यूनतम: 2, अधिकतम: 1,000,000)।
  • period - (आवश्यक) मिलान यातायात की गणना करने के लिए सेकंड में समय। यदि इस अवधि के भीतर गिनती सीमा से अधिक हो जाती है, तो कार्रवाई की जाएगी (न्यूनतम: 1, अधिकतम: 86,400)।
  • action - (आवश्यक) परिभाषित की गई अवधि के भीतर मिलान किए गए ट्रैफ़िक की सीमा पार होने पर की जाने वाली क्रिया।
  • match - (वैकल्पिक) यह निर्धारित करता है कि कौन सी सीमा दर की सीमा सीमा की ओर जाती है। डिफ़ॉल्ट रूप से ज़ोन के सभी ट्रैफ़िक से मेल खाता है। नीचे परिभाषा देखें।
  • disabled - (वैकल्पिक) कि क्या यह रैलिमिट वर्तमान में अक्षम है। डिफ़ॉल्ट: false
  • description - (वैकल्पिक) एक नोट जिसका उपयोग आप दर सीमा के कारण का वर्णन करने के लिए कर सकते हैं। यह मान सैनिटाइज है और सभी टैग हटा दिए गए हैं।
  • bypass_url_patterns - (वैकल्पिक) यहां निर्दिष्ट पैटर्न से मेल खाने वाले URL को दर सीमित करने से बाहर रखा जाएगा।

मैच ब्लॉक का समर्थन करता है:

  • request - (वैकल्पिक) HTTP अनुरोध (क्लाइंट से Cloudflare तक) से मेल खाता है। नीचे परिभाषा देखें।
  • response (वैकल्पिक) Cloudflare से क्लाइंट को वापस किए जाने से पहले HTTP प्रतिक्रियाओं से मेल खाती है। यदि इसे परिभाषित किया जाता है, तो इस स्तर पर यातायात की पूरी गिनती होती है। इस क्षेत्र की आवश्यकता नहीं है।

मिलान.श्रेणी ब्लॉक समर्थन करता है:

  • methods - (वैकल्पिक) HTTP मेथड, एक सबसेट हो सकता है ['POST', 'PUT'] या सभी [' ALL ]। डिफ़ॉल्ट: [' ऑल ']।
  • schemes - (वैकल्पिक) HTTP स्कीम्स, एक ['HTTPS'], दोनों ['HTTP', 'HTTPS'] या सभी [' ALL '] हो सकती हैं। डिफ़ॉल्ट: [' ऑल ']।
  • url_pattern - (वैकल्पिक) होस्ट और पथ से मेल खाने वाला URL पैटर्न, अर्थात example.org/path। वाइल्डकार्ड का उपयोग लागू ट्रैफ़िक से मेल खाने के लिए किया जाता है, क्वेरी स्ट्रिंग्स का मिलान नहीं किया जाता है। अपने ज़ोन के सभी ट्रैफ़िक के लिए * का उपयोग करें। चूक: '*'।

मैच.स्प्रेस ब्लॉक का समर्थन करता है:

  • status - (वैकल्पिक) HTTP स्थिति कोड, एक [403], कई [401,403] हो सकते हैं या यह मान प्रदान नहीं करके सभी को दर्शा सकते हैं।
  • origin_traffic - (वैकल्पिक) केवल अपने मूल सर्वर से आए ट्रैफ़िक की गिनती करें। यदि सही, कैश्ड आइटम जो Cloudflare सर्व करते हैं तो दर सीमित करने की ओर नहीं गिने जाएंगे। डिफ़ॉल्ट: true

कार्रवाई ब्लॉक का समर्थन करता है:

  • mode - (आवश्यक) क्रिया करने का प्रकार। स्वीकार्य मूल्य 'अनुकरण' और 'प्रतिबंध' हैं।
  • timeout - (आवश्यक) शमन क्रिया करने के लिए पूर्णांक के रूप में सेकंड में समय। अवधि से कम या अधिक होना चाहिए (न्यूनतम: 1, अधिकतम: 86,400)।
  • response - (वैकल्पिक) कस्टम सामग्री-प्रकार और वापस लौटने के लिए, यह ज़ोन के लिए कस्टम त्रुटि को ओवरराइड करता है। इस क्षेत्र की आवश्यकता नहीं है। डिफ़ॉल्ट HTML त्रुटि पृष्ठ में परिणाम होगा। नीचे परिभाषा।

कार्रवाई उत्तर ब्लॉक का समर्थन करता है:

  • content_type - (आवश्यक) शरीर का सामग्री-प्रकार, इनमें से एक होना चाहिए: 'पाठ / सादा', 'पाठ / xml', 'अनुप्रयोग / json'
  • body - (आवश्यक) शरीर को वापस करने के लिए, यहाँ सामग्री content_type के अनुरूप होनी चाहिए।

संदर्भ संदर्भित करता है

निम्नलिखित विशेषताएँ निर्यात की जाती हैं:

  • id - दर सीमा आईडी।
  • zone_id - डीएनएस ज़ोन आईडी।

आयात

जोन नाम और दर सीमा आईडी से बनी एक समग्र आईडी का उपयोग करके दर सीमा को आयात किया जा सकता है

$ terraform import cloudflare_rate_limit.default example.com/ch8374ftwdghsif43