SSL.com's شركاء الموزعين يمكن أن تولد الآن ACME أوراق اعتماد لعملائهم مع واجهة برمجة تطبيقات SWS. يصف هذا الكيفية نقاط نهاية API التي يجب على البائع إنشاؤها للاستفادة من هذه الميزة ، ويوفر إرشادات خطوة بخطوة لإنشاء مجموعة جديدة من بيانات الاعتماد.
نقاط نهاية واجهة برمجة تطبيقات الموزع
قبل البدء في إصدار بيانات اعتماد ACME للعملاء ، يُتوقع من البائعين توفير نقطتي نهاية لواجهة برمجة التطبيقات (API) التي يمكن لـ SSL.com طلبها للحصول على ترخيص وإصدار شهادة. يجب على البائعين أيضًا تزويد SSL.com بعنوان URL لمعاودة الاتصال (على سبيل المثال ، https://acme-hook.reseller.com
في الأمثلة أدناه) التي سيستخدمها RA الخاص بـ SSL.com عند تقديم هذه الطلبات.
reseller_authorization
سيقوم SSL.com بإجراء مكالمة إلى البائع reseller_authorization
نقطة النهاية لتحديد ما إذا كان يجب إصدار الشهادة المطلوبة (على سبيل المثال ، إذا كان حساب العميل به أموال كافية). سيشمل الطلب الخاص بالمستخدم kid
ونوع ومدة الشهادة المطلوبة وطريقة التحقق المستخدمة:
انشر https://acme-hook.reseller.com/reseller_authorization {"kid": '2378c85a2d9b'، 'product': 'sslcom_dv'، 'duration': '365'، 'identifiers': {dns: ['example. com ']}}
استجابة ناجحة (قد يتم متابعة الطلب)
يجب أن تتضمن الاستجابة الناجحة ، مع إشارة المورِّد إلى أن الأمر مرخصًا ويمكن متابعته ، أن يتضمن رمز الحالة لـ 200 OK
و success
قيمة true
في جسم الاستجابة:
{"نجاح": صحيح}
إذا صرّح البائع بأمر ما كما هو موضح أعلاه ، فسيقوم RA الخاص بـ SSL.com بالتحقق مما إذا كان من الممكن فوترة البائع مقابل الشراء لتحديد إمكانية تنفيذ الطلب. إذا وافق المورِّد على أمر ما ولكن ليس لديه أموال كافية لتغطية الشهادة ، فسيتم إصدار شهادة مجانية لمدة 90 يومًا للعملاء.
استجابة فاشلة (الطلب قد لا يكتمل)
يجب أن تشتمل الاستجابة الفاشلة على غير مناسب-200
رمز الحالة ، على سبيل المثال:
403 Forbidden
إذا كان العميل لديه أموال غير كافية مع المورِّد.401 Unauthorized
إذا كانkid
غير موجود في سجلات البائع.500 Internal Server Error
إذا حدث خطأ ما من جانب البائع.
يجب أن يتضمن نص الاستجابة للأمر الفاشل قيمة false
For success
، وقد يتضمن أيضًا error_message
التي ستظهر للمستخدم:
{"نجاح": "خطأ"، "error_message": "رصيد غير كاف"}
If error_message
فارغ ، سيتم تقديم رسالة عامة للمستخدم تقول "لم يتم التصريح بالطلب".
تلقي_شهادة
• receive_certificate
تُستخدم نقطة النهاية لـ SSL.com لإرسال شهادة fullchain الصادرة إلى البائع بالإضافة إلى معلومات أخرى حول الطلب:
انشر https://acme-hook.reseller.com/receive_certificate {"kid": "2378c85a2d9b"، "product": "basicssl"، "duration": "365"، "المعرفات": {dns: ['example. com '،' www.example.com ']}، "cert": {"body": ، "not_before" => "2021-06-07T11: 39: 17.000-05: 00"، "not_after" => "2021-09-19T11: 36: 24.000-05: 00"}}
قم بإنشاء بيانات اعتماد ACME
بمجرد أن يقدم المورِّد نقاط نهاية واجهة برمجة التطبيقات الموضحة أعلاه ، يمكنه اتباع الإرشادات خطوة بخطوة أدناه لإنشاء بيانات اعتماد ACME للعميل:
- أولاً ، ستحتاج إلى بيانات اعتماد SSL.com API الخاصة بك. قم بتسجيل الدخول إلى لوحة تحكم بائع SSL.com وانقر فوق وثائق التفويض api الرابط.
- استخدم روابط الحافظة لنسخ ملف مفتاح الحساب / ACME و المفتاح السري المرتبطة
account_admin
دور ولصقها في محرر نصوص. - افتح نافذة طرفية وأدخل أمر cURL كما يلي. يستبدل
ACCOUNT-KEY
وSECRET-KEY
بالقيم التي جمعتها في الخطوة السابقة. يستبدلDESCRIPTION
مع بعض النص الوصفي حول عميلك مثل اسم الشركة أو معرّف المستخدم. لاحظ أن كلDESCRIPTION
التي تستخدمها يجب أن تكون فريدة من نوعها. سيؤدي إجراء طلبات متكررة بنفس الوصف إلى إرجاع بيانات الاعتماد التي تم إنشاؤها في الأصل للطلب الأول بهذا الوصف.curl --location --request POST 'https: //sws.sslpki.com / acme / create_credentials '\ --header' Content-Type: application / json '\ --data-raw' {"account_key": "ACCOUNT-KEY"، "secret_key": "SECRET-KEY"، "الوصف ": "وصف"}'
- يجب أن تتلقى كائن JSON مع
eab-kid
وeab-hmac
القيم التي يمكنك توفيرها لعميلك لاستخدامها عند طلب الشهادات من عربكو.{"response_type": "ok"، "eab-kid": "2378c85a2d9b"، "eab-hmac": "qTs1vE6SMcX3UgK5DtYbc48IYUd7wUr109eCslCdY3N"}
- ستظهر أيضًا بيانات الاعتماد التي تم إنشاؤها حديثًا جنبًا إلى جنب مع بيانات اعتماد API و ACME الأخرى لحساب الموزع الخاص بك.