如何设置只能由其他内部服务调用的微服务。微服务不应该公开访问,因为它可以访问具有秘密信息的数据库。我已经试着用spring security来确保微服务的安全,但在这种情况下,我在FeignClient中遇到了有关授权的问题。春天 - 只能在内部访问微服务
1
A
回答
0
假设你是无法解决这个问题,基础设施 (这是解决这个问题的唯一正确途径), 有几个(坏)技术,您可以使用:
- IP地址白列表 - 创建一个良好的IP地址列表,拒绝来自不在列表中的地址的任何请求。
- IP地址区域 - 白名单的变化。创建部分IP地址列表,并拒绝与其中一个部分地址不匹配的任何请求。
- 仅限非路由IP - IP地址区域的变化。只接受来自非路由IP地址的请求(这些只能在本地网络上)。这是一个Wiki page of non-routing IP addresses
- 魔法令牌。只接受包含特定令牌的请求。这特别糟糕,因为有人可以看你的流量并发现令牌。
可能有其他的选择,但随着基础设施去。
0
这实际上是一个基础设施问题。通常情况下,您希望在内部拥有一个包含所有资源的专用网络 - 所谓的De-Militarized-Zone或DMZ--然后拥有提供外部访问的第二个网络或端点网桥。内部网络不应该从互联网上到达。端点可以是单个服务器或作为bastion主机实现的服务器阵列,并且将验证和授权呼叫者并将呼叫转发到合法的专用网络。
API网关(或边缘服务器)模式通常用于实现此目的。网关的良好配置非常重要。
这是一个article如何与亚马逊云做到这一点。
这里是Kong的一个link,这是一个您可以自己部署的通用API网关。
相关问题
- 1. 访问内部微服务
- 2. 春天,来自服务内部的服务电话
- 3. 访问Docker容器内的微服务?
- 4. 内部服务器错误在春天调用Ajax时
- 5. 春天不能休息服务
- 6. 内部NuGet服务器无法访问
- 7. 只能从内部服务器
- 8. 只能通过代理启用外部服务器访问?
- 9. 访问服务内部控制器
- 10. 春天和休息服务
- 11. 自己的用户界面与春天和Thymleaf的微服务
- 12. 春微服务:响应与信息来自其他微服务
- 13. 春天微服务,无状态会话,角度和静态文件服务
- 14. 微服务部署
- 15. 访问微软的Outlook从Windows服务
- 16. 在春天访问Stomp头文件
- 17. 在春天访问用户ID
- 18. 访问被拒绝在春天oauth 2
- 19. 无法访问注释春季服务
- 20. 常春藤&服务器访问错误
- 21. 在春天创建web服务mvc 2.5
- 22. Ftp轮询服务在春天Intellration
- 23. 访问外部服务
- 24. 天青AppService服务EasyApi - 如何访问
- 25. 有没有办法只记录REST请求体失败,并在春天发生内部服务器错误
- 26. 春微服务之间的通信
- 27. 确保微服务春云安全Oauth2
- 28. 春季安全作为微服务
- 29. 的REST API春天验证只能部分
- 30. 春季启动微服务框架如何从一个微服务调用另一个微服务
你的微服务和它所涉及的所有数据库应该在防火墙后面。我不会只依赖Spring Security。 – duffymo
那么最后唯一不在防火墙后面的是api网关吗?感谢您的回答 –
我会有一个可以验证和重定向的网关。 – duffymo