2010-07-27 7 views
0

J'ai une pile Linux/Apache/Rails hébergeant un service de données. Le service de données est essentiellement une interface pour plusieurs sources de données, semblable à une recherche fédérée.Apache/Rails: Transfert PKI

Les requêtes au service sont authentifiées via PKI. Lors de la gestion de chaque demande, l'infrastructure à clé publique doit être transmise à chaque source de données appropriée pour la demande donnée - chaque source de données utilise l'infrastructure PKI pour contrôler l'accès aux données. Je sais comment accéder au DN du demandeur à partir de Rails, mais je n'ai pas la moindre idée sur la façon d'accéder à l'ICP ou de la transmettre dans les requêtes Web lancées par le contrôleur lors de la gestion de la demande. Aucune suggestion?

Répondre

0

Votre description rend un peu difficile le suivi de l'organisation, mais je vais essayer de le faire.

La nature de l'infrastructure PKI rend impossible la transmission (proxy) d'une connexion, car les deux extrémités définissent une clé de session secrète connue uniquement de ces parties. Il semble que vous avez 3 parties, un client, un intermédiaire et un point final. Ainsi, le client peut s'authentifier auprès de l'intermédiaire, et l'intermédiaire sait maintenant avec certitude qui est le client. Je pense que votre question est de savoir comment obtenir le point de terminaison de savoir avec certitude qui est le client. La méthode que je choisirais est de faire en sorte que chaque intermédiaire ait son propre certificat et s'authentifier auprès du point de terminaison lui-même (alors maintenant le point de terminaison sait exactement qui est l'intermédiaire) alors il suffit que l'intermédiaire passe le DN comme champ supplémentaire. confiance de l'intermédiaire.