برنامه نویسی

اجرای Security Security Zero Trust در برنامه های بومی Cloud (AWS & Kubernetes)

مقدمه

امنیت در محیط های بومی ابر فراتر از مدل های سنتی مبتنی بر محیط تکامل یافته است. با امنیت صفر اعتماد ، هر درخواست ، کاربر و سیستم به طور مداوم تأیید و تأیید می شوند – اعتماد به نفس هرگز فرض نمی شود. این رویکرد در AWS و Kubernetes بسیار مهم است ، جایی که میکروسرویس ، API و بارهای کاری پویا در چندین شبکه و دستگاه در تعامل هستند.

در این راهنما ، ما اصول اعتماد صفر را تجزیه خواهیم کرد و نحوه اجرای آنها را در AWS و Kubernetes با نمونه های عملی نشان می دهیم.

امنیت اعتماد صفر چیست؟

اعتماد صفر از سه اصل اصلی پیروی می کند:

  1. هرگز اعتماد نکنید ، همیشه تأیید کنید – هر درخواست باید تأیید شود ، حتی اگر از داخل شبکه سرچشمه بگیرد.

  2. دسترسی کمترین امتیاز – کاربران و خدمات فقط حداقل مجوزهای مورد نیاز را دریافت می کنند.

  3. نقض -اقدامات امنیتی باید در زمان واقعی ، تهدیدها را تشخیص داده ، حاوی و پاسخ دهد.

اجرای صفر اعتماد در AWS

1) کمترین امتیاز را با AWS IAM اجرا کنید

هویت و مدیریت دسترسی AWS (IAM) کنترل می کند که چه کسی می تواند به منابع دسترسی پیدا کند.

مثال: محدود کردن نقش IAM به دسترسی فقط خواندنی به S3

به جای اعطای دسترسی کامل به S3 ، مجوزها را محدود کنید:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "s3:GetObject",
      "Resource": "arn:aws:s3:::your-bucket-name/*"
    }
  ]
}
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

بهترین روشها:

  • از نقش IAM به جای کاربران برای خدمات استفاده کنید.

  • به طور مرتب مجوزهای حسابرسی با آنالایزر دسترسی IAM.

  • اجرا Multi-Factor Authentication (MFA)بشر

2) دسترسی API را با AWS API Gateway & Cognito ایمن کنید

API ها یک سطح حمله کلیدی هستند. AWS API Gateway با Cognito اطمینان می دهد که فقط کاربران معتبر می توانند به خدمات دسترسی پیدا کنند.

مثال: محافظت از API با احراز هویت Cognito

  1. برای تأیید اعتبار ، یک استخر کاربر Cognito ایجاد کنید.

  2. مجوز Cognito را در API Gateway فعال کنید.

  3. برای محدود کردن دسترسی به کاربران مجاز ، سیاستی را ضمیمه کنید.

بهترین روشها:

  • برای تأیید اعتبار از نشانه های JWT استفاده کنید.

  • محدود کردن نرخ و قوانین WAF را برای جلوگیری از حملات تنظیم کنید.

  • پاسخ های API را با TLS 1.2+ رمزگذاری کنید.

اجرای اعتماد صفر در Kubernetes

3) امنیت POD را با Kubernetes RBAC اجرا کنید

کنترل دسترسی مبتنی بر نقش (RBAC) مجوزها را در سطح خوشه ، فضای نام و سطح منابع تعریف می کند.

*مثال: نقشی را ایجاد کنید تا فقط دسترسی به غلاف ها امکان دسترسی به غلاف را فراهم کند
*

apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  namespace: default
  name: pod-reader
rules:
- apiGroups: [""]
  resources: ["pods"]
  verbs: ["get", "list"]
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

بهترین روشها:

4) ارتباط ایمن با سیاست های شبکه Kubernetes

به طور پیش فرض ، Kubernetes به همه غلاف ها اجازه می دهد تا ارتباط برقرار کنند. سیاست های شبکه ترافیک بین خدمات را محدود می کند.

مثال: اجازه دهید فقط غلافهای جلوی ارتباط با غلافهای باطن ارتباط برقرار کنند

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: frontend-to-backend
  namespace: default
spec:
  podSelector:
    matchLabels:
      role: backend
  policyTypes:
  - Ingress
  ingress:
  - from:
    - podSelector:
        matchLabels:
          role: frontend
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

بهترین روشها:

  • پیش فرض تمام ترافیک Ingress را انکار کنید ، سپس به قوانین خاص اجازه دهید.

  • برای ارتباطات رمزگذاری شده از مش سرویس (ISTIO ، Linkerd) استفاده کنید.

5) هویت بار کار صفر را با Spiffe & Istio پیاده سازی کنید

احراز هویت سنتی به اعتبار استاتیک متکی است. Spiffe (چارچوب هویت تولید ایمن برای همه) هویت بار کاری پویا را ارائه می دهد.

مثال: تأیید اعتبار MTLS بین خدمات با ISTIO را فعال کنید

apiVersion: security.istio.io/v1beta1
kind: PeerAuthentication
metadata:
  name: default
  namespace: default
spec:
  mtls:
    mode: STRICT
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

بهترین روشها:

از MTLS برای تأیید اعتبار سرویس به سرویس استفاده کنید.

اعتبار سنجی هویت مبتنی بر JWT را اجرا کنید.

بار کار را با تله متری Istio کنترل کنید.

نظارت و پاسخ حادثه

اعتماد صفر فقط مربوط به پیشگیری نیست ، بلکه نظارت در زمان واقعی و پاسخ به حادثه است.

ابزارهای نظارت بر امنیت AWS:

  • AWS Guardduty – تهدیدها را در سیاههها تشخیص دهید.

  • AWS CloudTrail – فعالیت API حسابرسی.

  • قطب امنیتی AWS – نظارت بر انطباق.

ابزارهای امنیتی Kubernetes توصیه شده:

  • FALCO – امنیت زمان اجرا کانتینر را کنترل می کند.

  • Kube-Bench-بهترین شیوه های امنیتی خوشه را بررسی می کند.

  • Kyverno – سیاست های امنیتی را در سطح API Kubernetes اجرا می کند.

پایان

اجرای امنیت صفر اعتماد در AWS & Kubernetes به یک رویکرد لایه بندی شده نیاز دارد:

  • هویت و کنترل دسترسی (IAM ، RBAC)

  • API و ارتباط بار کار (API Gateway ، MTLS)

  • تقسیم شبکه (خط مشی های شبکه ، مش خدمات)

  • نظارت مداوم (Guardduty ، Falco)

با اجرای حداقل دسترسی به امتیاز ، تأیید مداوم و سیاستهای امنیتی قوی ، می توانید یک معماری قوی و صفر اعتماد به ابر بومی بسازید.

مراحل بعدی:
این استراتژی ها را در تنظیم AWS & Kubernetes خود اعمال کنید. به کمک نیاز دارید؟ سوالات خود را در زیر رها کنید!

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا