تواصل معنا
Webflow Premium Partner إيهاب فايز
العودة لأدوات AI Coding
الأمان والجودة

OAuth2 Authorization Flows

تنفيذ تدفقات رمز التفويض وPKCE وبيانات اعتماد العميل لـ OAuth2 مع مكتبة oauth4webapi.

Claude Code Cursor Copilot

نظرة عامة

oauth4webapi هي مكتبة حديثة وخفيفة الوزن لـ OAuth 2.0 وOpenID Connect تستخدم واجهات Web APIs (Fetch، Web Crypto) وتتبع أحدث أفضل ممارسات الأمان. تدعم تدفقات رمز التفويض مع PKCE وبيانات اعتماد العميل وتفويض الجهاز وتحديث الرمز وجميعها مبنية على تنفيذات متوافقة مع المعايير.

على عكس مكتبات OAuth القديمة فإن oauth4webapi لا تعتمد على بيئة تشغيل محددة وتعمل في Node.js وDeno وCloudflare Workers والمتصفحات. تنفذ أحدث توصيات أفضل الممارسات الأمنية الحالية لـ OAuth 2.0 بما في ذلك PKCE الإلزامي وتحديد المُصدر وDPoP. تتجنب المكتبة الميزات القديمة والأنماط غير الآمنة بالتصميم.

توفر المكتبة لبنات بناء منخفضة المستوى بدلاً من تجريدات متحيزة مما يمنح المطورين التحكم الكامل في تدفق OAuth. تتعامل مع تحليل مستندات الاكتشاف وطلبات نقطة نهاية الرمز وفحص الرمز واستدعاءات نقطة نهاية معلومات المستخدم. لـ OpenID Connect تتحقق من رموز ID وتتعامل مع التحقق من nonce وتدعم جميع المطالبات القياسية.

لمن هذه الأداة؟

  • تنفيذ تدفق رمز تفويض OAuth2 مع PKCE
  • إعداد تدفق بيانات اعتماد العميل للمصادقة بين الخدمات
  • بناء تسجيل دخول OpenID Connect مع التحقق من رمز ID
  • التعامل مع تحديث الرمز مع اكتشاف التدوير

التثبيت

إعداد Claude Code
npm install oauth4webapi

الإعدادات

import * as oauth from "oauth4webapi"

const issuer = new URL("https://accounts.google.com")
const as = await oauth.discoveryRequest(issuer)
  .then((res) => oauth.processDiscoveryResponse(issuer, res))

const client = { client_id: "your-client-id" }
const codeVerifier = oauth.generateRandomCodeVerifier()
const codeChallenge = await oauth.calculatePKCECodeChallenge(codeVerifier)