
OpenID Connect : Authentifier l’application cliente
Il faut bien comprendre que l’authentification ouvre la porte non seulement à un utilisateur, mais également à une application.
Si OpenID Connect permet bien d’identifier l’utilisateur, qu’en-est-il réellement de l’application ?
OpenID Connect (OIDC) offre un excellent moyen de sécuriser l’accès aux données protégées.
A condition toutefois de bien en comprendre les limitations et les risques en fonction de la configuration des parties (applications, serveur, ressources, réseau ...). Une mauvaise application des principes d’OIDC permettra à un malware d’accéder à des informations protégées !
Il ne s’agirait pas d’un défaut de sécurité d’OIDC, mais d’un défaut de mise en œuvre d’OpenID Connect. En effet, toutes les configurations client-serveur ne présentent pas la même problématique de sécurité : le flux d’autorisation avec code (Authorization Code Grant) n’est pas une solution universelle à appliquer aveuglément.
Identifier l’utilisateur, c’est bien. Mais encore faut-il vérifier que l’on ne fournit pas des données protégées à un malware. La question est : comment authentifier l’application qui s’adresse à une ressource protégée ? Cette question est explicitement hors du champ des spécifications d’OpenID Connect.
Nous présentons ici une analyse et les solutions offertes par OAuthSD.