12 décembre 2024
publié par 

Une des nouveauté majeure de la version 2025 est la fourniture avec le serveur d'application WEBDEV, d'un serveur d'authentification OAuth. Pour tester votre première connexion OAuth, depuis une plateforme PCSCloud, voici les manipulations à réaliser :

 

1 – Créer un identifiant OAuth :

Pour configurer le serveur OAuth, il faut utiliser le site WDBaas (https://nomplateforme.pcscloud.net/WDBAAS) qui sert déjà pour le Store Privé. Une fois connecté, le login/mot de passe par défaut de l'administrateur est Admin/Admin, il faut utiliser le volet "Serveur OAuth 2.0".
Dans ce volet, il suffit de créer un nouvel identifiant en lui donnant un nom, il s'agit généralement du nom de l'application ou du service qui va utiliser cet identifiant.

 

 

2 – Créer un utilisateur dans la base de WDBaas :

Lors de la connexion au serveur Oauth, celui-ci va demander un login et un mot de passe utilisateur pour valider la connexion. Il faut donc créer un utilisateur et renseigner les informations de cet utilisateur. Il est possible d'autoriser les utilisateurs à créer leur compte eux-même. Il faut le spécifier dans les options (volet Options) de la base WDBaas.
Dans la page de connexion, il y aura un lien pour créer un compte.

 

 

3 - Ecrire le code de connexion

Le plus simple est d'utiliser une variable de type OpenIDParamètres et l'URL fournie dans la page de configuration du serveur OAuth.

 

 

Le code sera le suivant :

 

 

TestAuth est un OpenIDParamètres
TestAuth.ClientID = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
TestAuth.ClientSecret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
TestAuth.URLRedirection = "http://localhost:9874"
// le scope « email profile openid » permet de récupérer l'email et le profil dans le token de connexion
TestAuth.Scope = "email profile openid"

// "xxxx.pcscloud.net" doit être remplacé par le domaine de votre store

TestAuth.URLConfiguration = "https://xxxx.pcscloud.net/.well-known/openid-configuration"

// Connexion

Cns est un AuthToken = AuthIdentifie(TestAuth)

 

SI Cns..Valide = Faux ALORS
FinProgramme("Utilisateur inconnu, l'application va être fermée")
FIN

// Connexion résussie

identite est un OpenIDIdentité = OpenIDLitIdentité(Cns)

InfoConstruit("Bienvenue %1 %2, vous êtes connecté !", Identité.Prénom, Identité.Nom)

Identité contient les informations demandées par le scope, et vous avez ainsi accès à ces informations dans l'application ou le site. L'intérêt de ce type de connexion est d'obtenir ces informations sans connaître le mot de passe de l'utilisateur, puisque c'est lui qui a saisit son mot de passe sur le site du serveur OAuth.

 

 

< Retour

Publier un commentaire : 
Votre adresse email ne sera pas publiée