مرحبًا ، لدي سؤال بخصوص التنفيذ:
https://github.com/zalando/connexion/blob/master/connexion/decorators/security.py#L88
يتحقق من أن رمز الوصول يجب أن يكون له أي نطاق من قائمة النطاقات.
هل يجب أن يكون الشيك أكثر صرامة من خلال التحقق من أن النطاقات المعلنة هي مجموعة فرعية من نطاقات الرمز المميز؟
@ zd0 هذا هو بالضبط ما كان يفعله، أليس كذلك؟
@ zd0 أعتقد أنك على حق ، يجب أن تحقق من allowed_scopes <= user_scopes
.
استلمتها الان. في رسالة التسجيل التي كانت نية واضحة: https://github.com/zalando/connexion/blob/master/connexion/decorators/security.py#L89 ("أحد النطاقات المسموح بها")
إذا أردنا تغيير ذلك ، فهذا تغيير جذري مع الإصدارات القديمة.
من الواضح أن هذا خطأ ويجب إصلاحه ، راجع https://github.com/OAI/OpenAPI-Specification/blob/OpenAPI.next/versions/2.0.md#securityRequirementObject .
يمكن أن يكون للكائن أنظمة أمان متعددة معلنة فيه وكلها مطلوبة (أي أن هناك منطقية AND بين المخططات).
...
إذا كان نظام الأمان من النوع "oauth2" ، فإن القيمة هي قائمة بأسماء النطاق المطلوبة للتنفيذ.
التعليق الأكثر فائدة
من الواضح أن هذا خطأ ويجب إصلاحه ، راجع https://github.com/OAI/OpenAPI-Specification/blob/OpenAPI.next/versions/2.0.md#securityRequirementObject .