¿Cómo puedo implementar o hacer una especie de "pirateo" en el patrón PUB - SUB para poder publicar solo para suscriptores autorizados , desconectar suscriptores no autorizados, etc.?
Busqué en Google este problema, pero todas las respuestas son muy similares para configurar el filtro de suscripción en el lado del suscriptor.
Pero quiero, como dije, publicar mis actualizaciones de PUB solo para aquellos clientes que pasaron una autorización, o tienen alguna key secreta, que se recibió en REQ - REP .
Gracias por cualquier idea.
Lee el Capítulo 5 de La Guía , específicamente la sección llamada "Pros y Contras de Pub-Sub".
Hay muchos problemas con lo que está tratando de lograr en la forma en que está tratando de lograrlo (pero hay soluciones, si está dispuesto a cambiar su arquitectura).
Entonces, esto prácticamente lo mata por lograr la seguridad general en un paradigma PUB/SUB que es de acceso público.
Aquí están sus opciones:
Como Jason le ha mostrado una excelente revisión sobre por qué (no olvide agregar un +1 a su notable respuesta, ¿de acuerdo?), Permítame agregar mis dos centavos sobre cómo:
P: ¿Cómo?
R: Olvídese del arquetipo PUB/SUB y cree uno específico para el caso
Sí. ZeroMQ es más bien una caja de herramientas muy poderosa que puede hacer, que una caja de dulces que tiene prohibido probar y elegir para ensamblar su próximo supercódigo.
De esta manera, su código está y permanece en el poder de establecer controles y medidas para el comportamiento del código del lado SUB que de otro modo sería incontrolable.
La creación de una solución de mensajería propia, compuesta y en capas es el verdadero poder que ZeroMQ aporta a sus diseños. Ahí te das cuenta de que eres el maestro del diseño de sistemas distribuidos. Además de los ejemplos académicos, nadie usa los arquetipos de comportamiento primitivo simple, sino que normalmente compone patrones de mensajes compuestos más sólidos y a prueba de realidad para las soluciones de grado de producción.
No existe una sola línea para hacer que su caso de uso del sistema funcione.
Si bien no es necesario que responda a todos sus detalles, es posible que desee leer los comentarios