Differenze tra le versioni di "Autenticazione e protezione"

Da It Ikoula wiki.
Jump to navigation Jump to search
 
(10 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1: Riga 1:
 +
<span data-link_translate_fr_title="Authentification et sécurité"  data-link_translate_fr_url="Authentification et sécurité"></span>[[:fr:Authentification et sécurité]][[fr:Authentification et sécurité]]
 +
<span data-link_translate_en_title="Authentication and security"  data-link_translate_en_url="Authentication and security"></span>[[:en:Authentication and security]][[en:Authentication and security]]
 +
<span data-link_translate_es_title="Autenticación y seguridad"  data-link_translate_es_url="Autenticación y seguridad"></span>[[:es:Autenticación y seguridad]][[es:Autenticación y seguridad]]
 +
<span data-link_translate_pt_title="Autenticação e segurança"  data-link_translate_pt_url="Autenticação e segurança"></span>[[:pt:Autenticação e segurança]][[pt:Autenticação e segurança]]
 +
<span data-link_translate_it_title="Autenticazione e protezione"  data-link_translate_it_url="Autenticazione e protezione"></span>[[:it:Autenticazione e protezione]][[it:Autenticazione e protezione]]
 +
<span data-link_translate_nl_title="Verificatie en beveiliging"  data-link_translate_nl_url="Verificatie en beveiliging"></span>[[:nl:Verificatie en beveiliging]][[nl:Verificatie en beveiliging]]
 +
<span data-link_translate_de_title="Authentifizierung und Sicherheit"  data-link_translate_de_url="Authentifizierung und Sicherheit"></span>[[:de:Authentifizierung und Sicherheit]][[de:Authentifizierung und Sicherheit]]
 +
<span data-link_translate_zh_title="身份验证和安全"  data-link_translate_zh_url="身份验证和安全"></span>[[:zh:身份验证和安全]][[zh:身份验证和安全]]
 +
<span data-link_translate_ar_title="الأمان والمصادقة"  data-link_translate_ar_url="الأمان والمصادقة"></span>[[:ar:الأمان والمصادقة]][[ar:الأمان والمصادقة]]
 +
<span data-link_translate_ja_title="認証とセキュリティ"  data-link_translate_ja_url="認証とセキュリティ"></span>[[:ja:認証とセキュリティ]][[ja:認証とセキュリティ]]
 +
<span data-link_translate_pl_title="Uwierzytelniania i zabezpieczeń"  data-link_translate_pl_url="Uwierzytelniania i zabezpieczeń"></span>[[:pl:Uwierzytelniania i zabezpieczeń]][[pl:Uwierzytelniania i zabezpieczeń]]
 +
<span data-link_translate_ru_title="Проверка подлинности и безопасность"  data-link_translate_ru_url="Проверка подлинности и безопасность"></span>[[:ru:Проверка подлинности и безопасность]][[ru:Проверка подлинности и безопасность]]
 +
<span data-link_translate_ro_title="Autentificare și securitate"  data-link_translate_ro_url="Autentificare și securitate"></span>[[:ro:Autentificare și securitate]][[ro:Autentificare și securitate]]
 +
<span data-link_translate_he_title="אבטחה ואימות"  data-link_translate_he_url="אבטחה ואימות"></span>[[:he:אבטחה ואימות]][[he:אבטחה ואימות]]
 +
<br />Il presente articolo è stato tradotto tramite un software di traduzione automatica. È possibile visualizzare l'origine articolo [[:fr:Authentification et sécurité|qui]].<br /><span data-translate="fr"></span><br />
 +
<span data-link_translate_fr_title="Authentification et sécurité"  data-link_translate_fr_url="Authentification et sécurité"></span>[[:fr:Authentification et sécurité]][[fr:Authentification et sécurité]]
 +
<span data-link_translate_he_title="אבטחה ואימות"  data-link_translate_he_url="%D7%90%D7%91%D7%98%D7%97%D7%94+%D7%95%D7%90%D7%99%D7%9E%D7%95%D7%AA"></span>[[:he:אבטחה ואימות]][[he:אבטחה ואימות]]
 +
<span data-link_translate_ro_title="Autentificare și securitate"  data-link_translate_ro_url="Autentificare+%C8%99i+securitate"></span>[[:ro:Autentificare și securitate]][[ro:Autentificare și securitate]]
 +
<span data-link_translate_ru_title="Проверка подлинности и безопасность"  data-link_translate_ru_url="%D0%9F%D1%80%D0%BE%D0%B2%D0%B5%D1%80%D0%BA%D0%B0+%D0%BF%D0%BE%D0%B4%D0%BB%D0%B8%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D0%B8+%D0%B8+%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C"></span>[[:ru:Проверка подлинности и безопасность]][[ru:Проверка подлинности и безопасность]]
 +
<span data-link_translate_pl_title="Uwierzytelniania i zabezpieczeń"  data-link_translate_pl_url="Uwierzytelniania+i+zabezpiecze%C5%84"></span>[[:pl:Uwierzytelniania i zabezpieczeń]][[pl:Uwierzytelniania i zabezpieczeń]]
 +
<span data-link_translate_ja_title="認証とセキュリティ"  data-link_translate_ja_url="%E8%AA%8D%E8%A8%BC%E3%81%A8%E3%82%BB%E3%82%AD%E3%83%A5%E3%83%AA%E3%83%86%E3%82%A3"></span>[[:ja:認証とセキュリティ]][[ja:認証とセキュリティ]]
 +
<span data-link_translate_ar_title="الأمان والمصادقة"  data-link_translate_ar_url="%D8%A7%D9%84%D8%A3%D9%85%D8%A7%D9%86+%D9%88%D8%A7%D9%84%D9%85%D8%B5%D8%A7%D8%AF%D9%82%D8%A9"></span>[[:ar:الأمان والمصادقة]][[ar:الأمان والمصادقة]]
 +
<span data-link_translate_zh_title="身份验证和安全"  data-link_translate_zh_url="%E8%BA%AB%E4%BB%BD%E9%AA%8C%E8%AF%81%E5%92%8C%E5%AE%89%E5%85%A8"></span>[[:zh:身份验证和安全]][[zh:身份验证和安全]]
 
<span data-link_translate_de_title="Authentifizierung und Sicherheit"  data-link_translate_de_url="Authentifizierung+und+Sicherheit"></span>[[:de:Authentifizierung und Sicherheit]][[de:Authentifizierung und Sicherheit]]
 
<span data-link_translate_de_title="Authentifizierung und Sicherheit"  data-link_translate_de_url="Authentifizierung+und+Sicherheit"></span>[[:de:Authentifizierung und Sicherheit]][[de:Authentifizierung und Sicherheit]]
 
<span data-link_translate_nl_title="Verificatie en beveiliging"  data-link_translate_nl_url="Verificatie+en+beveiliging"></span>[[:nl:Verificatie en beveiliging]][[nl:Verificatie en beveiliging]]
 
<span data-link_translate_nl_title="Verificatie en beveiliging"  data-link_translate_nl_url="Verificatie+en+beveiliging"></span>[[:nl:Verificatie en beveiliging]][[nl:Verificatie en beveiliging]]
<span data-link_translate_pt_title="Autenticação e segurança"  data-link_translate_pt_url="Autentica%C3%A7%C3%A3o+e+seguran%C3%A7a"></span>[[:pt:Autenticação e segurança]][[pt:Autenticação e segurança]]
+
<span data-link_translate_it_title="Autenticazione e protezione"  data-link_translate_it_url="Autenticazione+e+protezione"></span>[[:it:Autenticazione e protezione]][[it:Autenticazione e protezione]]
<span data-link_translate_es_title="Autenticación y seguridad"  data-link_translate_es_url="Autenticaci%C3%83%C2%B3n_y_seguridad"></span>[[:es:Autenticación y seguridad]][[es:Autenticación y seguridad]]
+
<span data-link_translate_pt_title="Autenticação e segurança"  data-link_translate_pt_url="Autentica%C3%A7%C3%A3o+e+seguran%C3%A7a"></span>[[:pt:Autenticação e segurança]][[pt:Autenticação e segurança]]
 +
<span data-link_translate_es_title="Autenticación y seguridad"  data-link_translate_es_url="Autenticaci%C3%B3n+y+seguridad"></span>[[:es:Autenticación y seguridad]][[es:Autenticación y seguridad]]
 
<span data-link_translate_en_title="Authentication and security"  data-link_translate_en_url="Authentication+and+security"></span>[[:en:Authentication and security]][[en:Authentication and security]]
 
<span data-link_translate_en_title="Authentication and security"  data-link_translate_en_url="Authentication+and+security"></span>[[:en:Authentication and security]][[en:Authentication and security]]
<span data-link_translate_fr_title="Authentification et sécuritédata-link_translate_fr_url="Authentification+et+s%C3%A9curit%C3%A9"></span>[[:fr:Authentification et sécurité]][[fr:Authentification et sécurité]]
+
<!-- Début de l'article. Placez votre texte ci-après et n'hésitez pas à personnaliser les chapitres selon votre besoin -->
 +
 
 +
 
 +
 
 +
==Introduzione==
 +
Come autenticare le API Ikoula e condizioni {{Template:Sécurité}} ?
 +
 
 +
==Spiegazioni==
 +
Pour des raisons évidentes de {{Template:Sécurité}}, l'API Ikoula exige une authentification. Celle-ci est basée sur un identifiant, un mot de passe et une firma :<br />
 +
* L'ID è l'indirizzo email utilizzato per collegare l'account Ikoula o extranet. Il nome del parametro da passare è sempre  <span class="notranslate">'''account di accesso'''</span> ;
 +
* Viene fornita la password come può essere, in testo non crittografato (parametro  <span class="notranslate">'''password'''</span>), viene crittografato tramite una funzione specifica utilizzando una chiave pubblica fornita da Ikoula (parametro <span class="notranslate">'''crypted_password'''</span>) e Base64_encode ;
 +
* La firma viene generata in base ai parametri forniti quando si chiama l'API (vedere il processo di generazione della firma ==> [[Génération_de_la_signature|Génération de la signature]]).
 
<br />
 
<br />
 +
'''Queste impostazioni devono essere passate sempre in GET all'API !'''
 +
<br /><br />ATTENZIONE :<br />
 +
Il passaggio della password in testo non crittografato viene fornito per facilitare la gestione dell'API e serve come un debug. Per i test all'API, è possibile, ad esempio, utilizzare un utente temporaneo dedicato a questi test e autenticare l'utente con la password in chiaro (vedere il Wiki per la creazione di sous-utilisateur: https://support.ikoula.com/index-1-2-2835.html).<br /><br />
 +
L'utilizzo della crittografia della password con la chiave pubblica Ikoula è essenziale in qualsiasi ambiente di produzione o il termine non-Corte.<br />
 +
Se le chiamate API sono destinate a essere utilizzati tramite uno script o un programma, noi consigliamo di creare un utente dedicato a questo scopo anziché utilizzare il classico utente extranet.<br />
 +
Avete due opzioni :<br />
 +
* Contatta il nostro supporto per la creazione di un utente extranet ;
 +
* Creare un sous-utilisateur direttamente dalla homepage del tuo account extranet (Vedere il WIKI per la creazione di sous-utilisateur: https://support.ikoula.com/index-1-2-2835.html).
 +
Attention à ne pas oublier '''de lui mettre les droits sur les prestations souhaitées'''.
 +
<br /><br />
 +
;Crittografia a chiave pubblica della password è disponibile al seguente indirizzo:
 +
: https://api.ikoula.com/downloads/Ikoula.API.RSAKeyPub.pem
  
Il presente articolo è stato tradotto tramite un software di traduzione automatica. È possibile visualizzare l'origine articolo [[:es:Autenticación y seguridad|qui]].<br /><span data-translate="es"></span>
+
==Esempi==
 +
Per questo esempio, l'account di accesso sarà "ikoulasupport".<br />
 +
Per crittografare la password, ecco un esempio di una funzione utilizzando la chiave pubblica {{Template:IKoula}} :<br /><br />
 +
<syntaxhighlight lang="php">
 +
// 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é
 +
</syntaxhighlight>
 +
 +
==Conclusione==
 +
Una volta che la password e crittografati firma, possiamo fare la chiamata all'API con parametri (Se seguiamo l'esempio di cui sopra) :<br />
 +
* login = ikoulasupport ;
 +
* crypted_password = base64_encode($password_crypt) ;
 +
* signature = firma generata (vedere il processo di generazione della firma ==> [[Génération_de_la_signature|Génération de la signature]]).
 +
<br />
 +
'''NB : Non dimenticate di url_encoder ogni parametro passato !'''
  
 +
<!-- Fin de l'article -->
 +
<br /><br />
 +
Questo articolo sembra utile a voi ? <vote />
 +
<!-- Placez ici la catégorie à laquelle se rapporte votre article. Ex: [[Category:Contribuire]] -->
 +
[[Catégorie:API]]
  
 +
<!-- Gestion SEO. Indiquez les informations manquantes -->
 
<br />
 
<br />
 
<comments />
 
<comments />

Versione attuale delle 10:02, 10 feb 2017

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:אבטחה ואימות
Il presente articolo è stato tradotto tramite un software di traduzione automatica. È possibile visualizzare l'origine articolo qui.

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


Introduzione

Come autenticare le API Ikoula e condizioni Sicurezza ?

Spiegazioni

Pour des raisons évidentes de Sicurezza, l'API Ikoula exige une authentification. Celle-ci est basée sur un identifiant, un mot de passe et une firma :

  • L'ID è l'indirizzo email utilizzato per collegare l'account Ikoula o extranet. Il nome del parametro da passare è sempre account di accesso ;
  • Viene fornita la password come può essere, in testo non crittografato (parametro password), viene crittografato tramite una funzione specifica utilizzando una chiave pubblica fornita da Ikoula (parametro crypted_password) e Base64_encode ;
  • La firma viene generata in base ai parametri forniti quando si chiama l'API (vedere il processo di generazione della firma ==> Génération de la signature).


Queste impostazioni devono essere passate sempre in GET all'API !

ATTENZIONE :
Il passaggio della password in testo non crittografato viene fornito per facilitare la gestione dell'API e serve come un debug. Per i test all'API, è possibile, ad esempio, utilizzare un utente temporaneo dedicato a questi test e autenticare l'utente con la password in chiaro (vedere il Wiki per la creazione di sous-utilisateur: https://support.ikoula.com/index-1-2-2835.html).

L'utilizzo della crittografia della password con la chiave pubblica Ikoula è essenziale in qualsiasi ambiente di produzione o il termine non-Corte.
Se le chiamate API sono destinate a essere utilizzati tramite uno script o un programma, noi consigliamo di creare un utente dedicato a questo scopo anziché utilizzare il classico utente extranet.
Avete due opzioni :

  • Contatta il nostro supporto per la creazione di un utente extranet ;
  • Creare un sous-utilisateur direttamente dalla homepage del tuo account extranet (Vedere il WIKI per la creazione di sous-utilisateur: https://support.ikoula.com/index-1-2-2835.html).

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

Crittografia a chiave pubblica della password è disponibile al seguente indirizzo
https://api.ikoula.com/downloads/Ikoula.API.RSAKeyPub.pem

Esempi

Per questo esempio, l'account di accesso sarà "ikoulasupport".
Per crittografare la password, ecco un esempio di una funzione utilizzando la chiave pubblica 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.";

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

Conclusione

Una volta che la password e crittografati firma, possiamo fare la chiamata all'API con parametri (Se seguiamo l'esempio di cui sopra) :

  • login = ikoulasupport ;
  • crypted_password = base64_encode($password_crypt) ;
  • signature = firma generata (vedere il processo di generazione della firma ==> Génération de la signature).


NB : Non dimenticate di url_encoder ogni parametro passato !



Questo articolo sembra utile a voi ?

0

Catégorie:API



Non si dispone dei permessi necessari per inviare commenti.