認証とセキュリティ

提供: Japanese Ikoula Wiki
2015年10月30日 (金) 11:54時点におけるIkbot (トーク | 投稿記録)による版
Jump to navigation Jump to search

ru:Проверка подлинности и безопасность ar:الأمان والمصادقة zh:身份验证和安全 fr:Authentification et sécurité

这篇文章是从由软件进行自动翻译。你可以看到这篇文章的源代码







はじめに

API Ikoula とセキュリティ ポリシーの認証方法 ?

説明

安全性の明白な理由は、Ikoula API には、認証が必要となります。ユーザー名、パスワード、および署名に基づいて :

  • ID は Ikoula あなたのアカウントへの接続に使用される電子メール アドレスまたはエクストラネット。渡すパラメーターの名前は、常に ログイン .
  • パスワードも、プレーン テキストで提供は (パラメーター password)、Ikoula によって提供される公開キーを使用して特定の機能を介して暗号化 (パラメーター crypted_password) 基本 64_encode
  • API の呼び出し時に指定されたパラメーターに基づいて署名が生成されます (署名生成手順を参照してください ==> 署名の生成)


これらの設定は、API を取得する常に渡す必要が !

注意 :
クリア テキスト パスワードの通路は、API のグリップを簡単に用意されて、デバッグとして役立ちます。API のテスト、たとえばこれらのテストに専念する一時的なユーザーを使用してプレーン テキストのパスワードを使用して認証 (ス utilisateur を作成するための WIKI を参照してください : https://support.ikoula.com/index-1-2-2835.html).

生産または非裁判所の任意のコンテキストでは、公開キー Ikoula とパスワードの暗号化の使用が欠かせません。
API 呼び出しは、スクリプトやプログラムを介して使用する運命にある場合は、正規のエクストラネット ユーザーを使用する代わりにこの目的のために専用のユーザーを作成するをお勧めします。
2 つのオプションが利用できる :

  • エクストラネットのユーザーを作成するため当社のサポートに連絡
  • エクストラネット アカウントのホームページから直接ス utilisateur を作成 (ス utilisateur を作成するための WIKI を参照してください : https://support.ikoula.com/index-1-2-2835.html) 特に忘れない 利点を必要な権限を配置 .



パスワード暗号化の公開キーは次のアドレスで利用可能
https://api.ikoula.com/downloads/Ikoula.API.RSAKeyPub.pem

この例では、ログインになります "ikoulasupport ".
パスワードの暗号化、キーの公共の iKoula を使用して関数の例をここでは :

// 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.";

<!--T:4-->
// ==> $password_crypt contient donc le mot de passe crypté

結論

パラメーターとしての API 呼び出しが存在することができますこのように暗号化されたパスワードと暗号化された署名は、一度 (上記の例に従うなら ) :

  • login = ikoulasupport
  • crypted_password = ベース 64_encode($password_crypt)
  • signature = 署名を生成 (署名生成手順を参照してください ==> 署名の生成)


NB : Url_encoder 各パラメーターが渡されることを忘れないでください !



この記事は気に有用であること ?

0



あなたにはコメントを投稿する権限がありません。