Alibaba Cloud International الموزع: Alibaba Cloud API Interface Call وطريقة تكوين المفتاح

سحابة 2026-06-02 阅读 13
cloud

بالنسبة للطلاب الذين هم على اتصال بالحوسبة السحابية أو التطوير الخلفي ، فإن "استدعاء واجهة برمجة التطبيقات" هو الطريقة الوحيدة لفتح الأعمال والموارد السحابية. سواء كنت ترغب في كتابة برنامج نصي لتشغيل وإيقاف تشغيل الجهاز تلقائيًا ، أو تعديل مجموعة الأمان على دفعات ، أو دمج تخزين OSS الخاص بـ Alibaba Cloud وواجهة النموذج الكبيرة في نظامك الخاص ، فلا يمكنك الاستغناء عن واجهة برمجة التطبيقات.

ومع ذلك ، عندما يرى الكثير من الناس مصطلحات التشفير (مثل AccessKey ، Secret ، HMAC-SHA1 ، وخوارزميات التوقيع) ، أو بسبب التكوين غير السليم ، قاموا بتسريب المفتاح عن طريق الخطأ إلى GitHub ، مما تسبب في اختراق الخادم من قبل المتسللين ، مما تسبب في خسائر فادحة.

اليوم يأخذك هذا البرنامج التعليمي في جميع أنحاء العملية مع العامية الكبيرة: من

كيفية الحصول على المفتاح بأمان

، إلى

كيفية تكوين أنيق محليا

، إلى هنا مرة أخرى

أكمل أول مكالمة API مع أبسط التعليمات البرمجية

.

المرحلة الأولى: المفهوم الأساسي (لا تضع مفتاح الباب مباشرة على شفتيك)

قبل القيام بذلك ، من الضروري معرفة مفهومين أساسيين:

AK

و

SK

. إنهم مثلك

بطاقة الهوية السحابية وكلمة المرور

.

AccessKey ID (AK للاختصار): ما يعادل "اسم المستخدم" الخاص بك. إنه عام ويستخدم لإخبار Ali Cloud "من أنا".

AccessKey Secret (SK): ما يعادل "كلمة المرور" الخاصة بك. لا يمكن الكشف عنها على الإطلاق ، وتستخدم لإثبات "أنا حقا أنا".

يحتاج كل طلب API من Alibaba Cloud إلى تشفير محتوى الطلب وتوقيعه باستخدام SK. بعد تلقي الطلب ، استخدم Ali Yun نفس الخوارزمية للتحقق ، ثم أطلق سراحها.

🚨القانون الحديدي: لا تستخدم AK/SK من الحساب الرئيسي!

إذا كنت تستخدم مباشرة مفتاح حساب رئيس Aliyun (الحساب الرئيسي) ، فإن هذا المفتاح له أعلى سيطرة على جميع الممتلكات الموجودة في حسابك (خصم الرسوم ، حذف المكتبة ، شراء الخادم).

النهج الصحيح:

قم بإنشاء حساب فرعي (مستخدم RAM) مثل "كاسحة الأرض" ، وقم فقط بتعيين إذن للقيام بشيء معين ، ثم استخدم AK/SK لهذا الحساب الفرعي.

المرحلة الثانية: الحصول على المفتاح بأمان (5 دقائق)

علينا أن نعبر علي يون

RAM (التحكم في الوصول)

لإنشاء مفتاح حساب فرعي آمن.

1. إنشاء مستخدم فرعي RAM

قم بتسجيل الدخول إلى Alibaba Cloud Console ، وأدخل ذاكرة الوصول العشوائي في شريط البحث العلوي ، وانقر للدخول إلى وحدة التحكم في الوصول.

في شريط التنقل الأيسر ، انقر على إدارة الهوية-> المستخدمين.

انقر على إنشاء زر المستخدم.

تكوين المعلمة الرئيسية: اسم تسجيل الدخول: اسمًا ذا معنى ، مثل api-operator-oss (يعني أن هذا الحساب يستخدم خصيصًا لضبط واجهة OSS). اسم العرض: مثل حساب خاص لواجهة OSS. طريقة الوصول: التركيز! يجب وضع علامة على الوصول إلى استدعاء OpenAPI. لا تحتاج إلى التحقق من "تسجيل الدخول إلى وحدة التحكم" لأن هذا الحساب لا يحتاج إلى تسجيل الدخول إلى صفحة الويب.

انقر على موافق. في هذه المرحلة سوف تظهر على الشاشة

جدول يحتوي على معرف AccessKey و AccessKey Secret.

قم بنسخها وحفظها في مكان آمن محليًا (مثل مدير كلمات المرور) على الفور!> ملاحظة: هذا Secret يظهر فقط هذه المرة ، بمجرد تحديث الصفحة أو إغلاق النافذة ، لن ترى مرة أخرى. إذا فقدت ، يمكنك فقط حذفها وإعادة بنائها.

2. منح الموظفين سلطة (تفويض)

الحساب الفرعي الذي تم إنشاؤه للتو هو "أبيض" ، بدون أي أذونات ، الاتصال المباشر بالواجهة سيسجل خطأ

لا يوجد أي شيء

.

في قائمة المستخدمين للتو ، ابحث عن المستخدم الجديد ، وانقر على إضافة أذونات على اليمين.

حدد نطاق التفويض: الحساب السحابي بأكمله.

اختيار الاستراتيجية: أدخل الخدمة التي تحتاج إلى الاتصال بها في مربع البحث. على سبيل المثال ، إذا كنت ترغب في التحكم في الخادم ، فما عليك سوى البحث عن ECS ، والتحقق من AliyunECSFullAccess (أذونات الإدارة) أو AliyunECSReadOnlyAccess (أذونات القراءة فقط). يوصى باتباع مبدأ الحد الأدنى من الأذونات ، وما هو مطلوب ، ولا توفر المتاعب مباشرة إلى AdministratorAccess (مسؤول النظام).

انقر على موافق ، تم الانتهاء من التفويض.

المرحلة الثالثة: تكوين المفتاح المحلي (رفض الترميز الثابت!)

بعد الحصول على AK/SK ، عشرة ملايين

لا تفعل

الكتابة مباشرة في الكود (هذا هو "الترميز الثابت" الأسطوري). في حالة وصول الرمز إلى المستودع العام يومًا ما ، ستنتظر دفع الفاتورة السحابية بأجر كامل.

الممارسة القياسية للصناعة هي الاستخدام

متغيرات البيئة (Environment Variables)

.

1. طريقة تكوين Linux / macOS

افتح المحطة الطرفية ، وقم بتحرير ملفات متغيرات البيئة الخاصة بك (مثل

~ /. Bashrc

أو

~ /. Zshrc

):

Export ALIBABA_CLOUD_ACCESS_KEY_ID = "AccessKeyID الخاص بك"

Export ALIBABA_CLOUD_ACCESS_KEY_SECRET = "AccessKeySecret الخاص بك"

بعد الحفظ ، تشغيل

مصدر ~ /. Bashrc

(أو الملف المقابل) جعل التكوين ساري المفعول.

2. طريقة تكوين ويندوز

انقر بزر الماوس الأيمن على "هذا الكمبيوتر"-> "الخصائص"-> "إعدادات النظام المتقدمة"-> "متغيرات البيئة".

في "متغيرات المستخدم" أو "متغيرات النظام" ، انقر فوق "جديد": اسم المتغير: ALIBABA_CLOUD_ACCESS_KEY_ID ، قيمة المتغير: املأ AK الخاص بك. قم بإنشاء اسم جديد: اسم المتغير: ALIBABA_CLOUD_ACCESS_KEY_SECRET ، قيمة المتغير: املأ SK الخاص بك.

انقر على طول الطريق لحفظ موافق. ملاحظة: بعد التكوين ، تحتاج إلى إعادة تشغيل بيئة التطوير المتكاملة الخاصة بك (مثل VS Co

De/PyCharm) أو نافذة سطر الأوامر ، وإلا لا يمكن قراءة المتغيرات الجديدة.

المرحلة الرابعة: أول مكالمة API للقتال الفعلي (مثال Python)

الآن بعد أن أصبحت البيئة جاهزة ، نستخدم الطريقة الأكثر التوصية باستخدام Alibaba Cloud الرسمية

V2.0 SDK

قم بإجراء مكالمة واحدة. فيما يلي الاستعلام عن جميع مثيلات خادم ECS (DescribeInstances) في حسابك كمثال.

1-تركيب مكتبة SDK الأساسية ومكتبة المنتجات المقابلة

تشغيل في المحطة المحلية:

باش

Pip install alibabacloud_tea_openapi

Pip install alibabacloud_ecs20140526 = = 4.3.0

2. كتابة رمز استدعاء

V2.0 SDK من Alibaba Cloud ذكي للغاية ، وسوف يقرأ تلقائيًا متغيرات البيئة التي قمنا بتكوينها للتو

يا الهي

و

يا إلهي

، لا تحتاج إلى كتابة كلمة حساسة في الكود.

Import os

Import sys

من Client as Ecs20140526Client

من alibabacloud_tea_openapi import models as open_api_models

من alibabacloud_ecs20140526 import models as ecs_20140526_models

Class AliyunApiDemo:

@ Staticmethod

Def create_client() -> Ecs20140526Client:

""

تهيئة حساب Client

""

# SDK يأخذ تلقائيا ALIBABA_CLOUD_ACCESS_KEY_ID و ALIBABA_CLOUD_ACCESS_KEY_SECRET من متغيرات البيئة

Config = open_api _

Models. Config()

# اختر اسم المجال الذي تريد الاتصال به ، على سبيل المثال ، Hangzhou هي cn-hangzhou ، و Shanghai هي cn-shanghai

Config. endpoint = f"ecs.cn-hangzhou.aliyuncs.com"

Return Ecs20140526Client(config)

@ثابت

Def main():

Client = AliyunApiDemo.create_client()

# معلمات طلب البناء (الاستعلام عن مثيلات ECS تحت المنطقة الجغرافية الحالية)

Describe_instances_request = (

Ecs_20140526_models.DescribeInstancesRequest (

Region_id = "cn-hangzhou"

)

)

Try:

# بدء الاتصال

Response = client.de scribe_instances(describe_instances_request)

# نتائج JSON التي تم إرجاعها بواسطة الطباعة

& Nb

Sp ؛ print("=== تم استدعاء API بنجاح ، يتم إرجاع النتيجة على النحو التالي ===")

Print (response.body)

Except Exception as error:

# التعامل مع الأخطاء بأناقة

Print (f "=== فشل استدعاء API ===")

If hasattr(error ، "message"):

Print (f "معلومات الخطأ: {error.message}")

If hasattr(error ، "كود"):

Print (f "رمز الخطأ: {error.code}")

If __name__ = = "__main__":

AliyunApiDemo.main()

قم بتشغيل هذا الرمز ، إذا رأيت بيانات JSON لقائمة مثيلات الخادم الخاص بك ، فهذا يعني أنك نجحت في فتح باب API الخاص بـ Alibaba Cloud.

المرحلة الخامسة: Master Advancy Fairy Tool-OpenAPI Explorer

إذا كنت لا ترغب في كتابة رمز ، أو لا تعرف كيفية ملء معلمات واجهة معينة ، يوفر Alibun "قطعة أثرية غش" مطلقة-

بوابة OpenAPI (OpenAPI Explorer)

.

متصفح الوصول إلى https://next.api.aliyun.com/.

أدخل الميزات التي تريد استخدامها في مربع البحث الأيسر ، مثل "إنشاء قرص سحابة" أو "إرسال رسالة نصية".

في النموذج الأوسط ، املأ المعلمات مباشرة باستخدام مربع الإدخال للواجهة المرئية.

النقطة المهمة هنا: ستنشئ علامة التبويب "مثال SDK" على الجانب الأيمن من صفحة الويب تلقائيًا رموز بلغات مختلفة وفقًا للمعلمات التي قمت بملؤها في الوقت الفعلي (Python و Java و Go و Node.js كلها

).

يمكنك حتى النقر فوق "بدء الاتصال" مباشرة على صفحة الويب لمعرفة ما إذا كانت النتيجة التي تعود إليها الواجهة صحيحة. بعد تصحيح الأخطاء ، قم بنسخ الرمز الموجود على اليمين مباشرة إلى مشروعك.

تلخيص تكتيكات تجنب الحفرة

ليس من الصعب ضبط الواجهة ، من الصعب في التفاصيل والأمن. أخيرًا ، أعطيتك أربع نصائح لتجنب الحفر:

تقليل الأذونات: إذا كنت تستطيع القراءة فقط ، فلا تقرأ أو تقرأ ، ولا تختار منتجات معينة.

الكود غير سري: إذا رأيت سلسلة تتبع بعد access_key في الكود المصدر ، تتم إعادة كتابتها للقراءة من متغيرات البيئة.

نظام التناوب المنتظم: يوصى بتعطيل مفتاح الحساب الفرعي للمشاريع التجارية في وحدة التحكم كل ستة أشهر ، وإعادة إنشاء مجموعة لمنع الموظفين من الاستقالة أو التسريب عن غير قصد.

استفد جيدًا من Explorer: لا تقضم المستندات النصية الرسمية ، واذهب إلى بوابة OpenAPI لمشاهدة رمز Demo الذي تم إنشاؤه تلقائيًا ، ويمكنك اتخاذ طرق أقل.

cloud
← 返回新闻中心