الأمان والمصادقة

من Arabic Ikoula Wiki
Jump to navigation Jump to search

fr:Authentification et sécurité en:Authentication and security es:Autenticación y seguridad pt:Autenticação e segurança it:Autenticazione e protezione nl:Verificatie en beveiliging de:Authentifizierung und Sicherheit zh:身份验证和安全 ar:الأمان والمصادقة ja:認証とセキュリティ pl:Uwierzytelniania i zabezpieczeń ru:Проверка подлинности и безопасность ro:Autentificare și securitate he:אבטחה ואימות
هام: تمت ترجمة هذه المقال باستخدام برامج للترجمة الآلية, لقرائة النسخة الأصلية أنقر على الرابط

fr:Authentification et sécurité he:אבטחה ואימות ro:Autentificare și securitate ru:Проверка подлинности и безопасность pl:Uwierzytelniania i zabezpieczeń ja:認証とセキュリティ ar:الأمان والمصادقة zh:身份验证和安全 de:Authentifizierung und Sicherheit nl:Verificatie en beveiliging it:Autenticazione e protezione pt:Autenticação e segurança es:Autenticación y seguridad en:Authentication and security


مقدمة

كيفية مصادقة عكلة API وسياسات الأمن ?

تفسيرات

Pour des raisons évidentes de الأمن, l'API Ikoula exige une authentification. Celle-ci est basée sur un identifiant, un mot de passe et une التوقيع :

  • المعرف هو عنوان البريد الإلكتروني المستخدمة للاتصال عكلة الحساب الخاص بك أو على الشبكة الخارجية. اسم المعلمة لتمرير دائماً تسجيل الدخول ;
  • كلمة المرور وأنها قد تكون، يرد في نص واضح (المعلمة password)، يتم تشفير عن طريق دالة معينة باستخدام مفتاح عمومي المقدمة من عكلة (المعلمة crypted_password) وقاعدة64_encode ;
  • التوقيع يتم إنشاؤها استناداً إلى المعلمات الموفرة عند استدعاء API (انظر عملية توليد التوقيع ==> Génération de la signature).


يجب دوماً تمرير هذه الإعدادات في الحصول على إلى API !

الاهتمام :
يتم توفيرها لتسهيل معالجة API مرور كلمة المرور في نص واضح ويعمل كتصحيح. للاختبارات الخاصة بك إلى API، يمكنك، على سبيل المثال، استخدام مستخدم مؤقت مخصص لهذه الاختبارات ومصادقتك مع كلمة المرور في مسح (انظر صفحة Wiki لإنشاء المستخدم سوس: https://support.ikoula.com/index-1-2-2835.html).

استخدام تشفير كلمة المرور مع المفتاح العمومي عكلة ضروري في أي بيئة الإنتاج أو مصطلح غير المحكمة.
إذا محكوم مكالمات API لاستخدامها عن طريق برنامج نصي أو برنامج، ونحن ننصح بإنشاء مستخدم مخصصة لهذا الغرض بدلاً من استخدام كلاسيكي مستخدم الشبكة الخاص بك.
لديك خياران :

  • الاتصال دعمنا لإنشاء مستخدم الشبكة ;
  • إنشاء سوس-المستخدم مباشرة من الصفحة الرئيسية للحساب الخاص بك إكسترانت (انظر صفحة WIKI لإنشاء المستخدم سوس: https://support.ikoula.com/index-1-2-2835.html).

Attention à ne pas oublier de lui mettre les droits sur les prestations souhaitées.

تشفير المفتاح العمومي لكلمة المرور متاح على العنوان التالي
https://api.ikoula.com/downloads/Ikoula.API.RSAKeyPub.pem

أمثلة

على سبيل المثال، سيتم تسجيل الدخول "إيكولاسوبورت".
لتشفير كلمة المرور، وإليك مثال على دالة باستخدام المفتاح العمومي إيكولا :

// Chemin local vers la clef publique téléchargée à http://api.ikoula.com/downloads/Ikoula.API.RSAKeyPub.pem
define('API_PUB_KEY_PATH', dirname(__FILE__) . '/Ikoula.API.RSAKeyPub.pem');
 
// Fonction de cryptage du mot de passe via la clef publique Ikoula
function opensslEncryptPublic($password)
{
        // Vérification de la présence de la clef publique
        if(file_exists(API_PUB_KEY_PATH))
        {
                if(!empty($password))
                {
                        // on récupére la clef public
                        $publicKey = openssl_pkey_get_public('file://'.realpath(API_PUB_KEY_PATH));
 
                        // Si il n'y a pas eu d'erreur lors de la récupération de la clef publique on continue
                        if ($publicKey !== FALSE)      
                        {
                                // Si chiffrement clef publique OK
                                if(openssl_public_encrypt($password, $crypted, $publicKey) === TRUE)   
                                {
                                        // Renvoie du passe crypté
                                        return $crypted;       
                                }
                                else
                                {
                                        return NULL;
                                }
                        }
                        else
                                return NULL;
                }
                else
                        return NULL;
        }
        else
        {
                echo("Erreur la clée public n'est pas présente.\n");
                return NULL;
        }
}
 
// Utilisation de la fonction de cryptage
$password_crypt = opensslEncryptPublic("Mot de passe non crypté");
if($password_crypt != NULL)
        echo "OK Mot de passe crypté: ".$password_crypt;
else
        echo "Erreur lors du cryptage du mot de passe.";

// ==> $password_crypt contient donc le mot de passe crypté

الاستنتاج

بمجرد تشفير كلمة المرور وتشفير التوقيع، يمكن أن نقوم استدعاء API مع معلمات (وإذا اتبعنا في المثال أعلاه) :

  • login = إيكولاسوبورت ;
  • crypted_password = قاعدة64_encode($password_crypt) ;
  • signature = التوقيع التي تم إنشاؤها (انظر عملية توليد التوقيع ==> Génération de la signature).


ملحوظة: : لا تنسى أن url_encoder تمرير كل معلمة !



تبدو هذه المادة مفيدة لك ?

0

Catégorie:API



ليس مسموح لك بأن تنشر تعليقا.