Key authentication के साथ APIs को सुरक्षित बनाना
आप एक सुरक्षित API बना रहे हैं और आपको API key verification लागू करनी है. API हर रिक्वेस्ट के X-API-Key हेडर में key चेक करेगी और उसे एक पूर्व-परिभाषित सीक्रेट से वेरिफाई करेगी. आप इस authentication सिस्टम को लागू करने के लिए FastAPI की built-in security सुविधाओं का उपयोग करेंगे.
FastAPI और HTTPException क्लास पहले से इम्पोर्ट की गई हैं.
यह अभ्यास पाठ्यक्रम का हिस्सा है
FastAPI के साथ प्रोडक्शन में AI डिप्लॉय करना
अभ्यास निर्देश
- FastAPI से निर्भरताएँ हैंडल करने के लिए आवश्यक फंक्शन इम्पोर्ट करें.
- रिक्वेस्ट में आने वाली API key को validate करने के लिए dependency बनाने हेतु एक API key header इंस्टेंस बनाएँ.
- प्री-डिफाइंड सीक्रेट key के साथ आने वाली
api_keyकी जाँच करकेverify_api_keyफंक्शन को पूरा करें. - जब रिक्वेस्ट में अमान्य key पास की जाए तो एक HTTP exception उठाएँ.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Import the function that handles dependencies
from fastapi import ____
from fastapi.security import APIKeyHeader
# Create the API key instance
api_key_header = ____(name="X-API-Key")
API_KEY = "your_secret_key"
# Pass the APIKeyHeader instance and verify against input api_key
def verify_api_key(api_key: str = Depends(____)):
if api_key != ____:
# Raise the HTTP exception here
raise ____(status_code=403, detail="Invalid API Key")
return api_key