我想在Azure服务结构上运行应用程序。一项服务应作为身份提供者。所以我在'usermanager'上安装了身份服务器4包。我还有两个其他服务应该使用此usermanager进行身份验证和授权。
适用于localhost。但是在Azure上我遇到的问题是端点必须在我的服务清单中是“输入”或“内部”。但对于我的用户管理员,我需要输入和内部。
<Endpoint Protocol="http" Name="IdentityServerEndpoint" Type="Input" Port="5000" />
/。众所周知/ openid-configuration需要'内部'和 / connect / authorize?xxxxxx需要'输入'
我发现对于输入端点,azure服务结构使用完全限定的域名,对于内部端点,它使用lokal网络的ip地址,如10.0.0.4。
是否有解决方案使端点既是输入又是内部? 或者是否有解决方案使身份服务器4处理两个端点?
有什么想法可以解决这个问题吗?
答案 0 :(得分:5)
信不信由你,Endpoint配置中的“Type”字段实际上并没有在任何托管平台上做任何事情。它只是您可以在代码中配置和使用的元数据(基本上是您设置自己的策略的一种方式)。不管你把它放在哪里都没关系。
最终,您要在VM上的进程上打开端点。该端点将在VM的IP和您选择的端口上打开,例如10.0.0.1:5000。
如果您希望该端点在群集的VIP和FQDN上也可用,则该配置在Service Fabric外部。在Azure中,您只需配置Azure负载均衡器即可在服务正在侦听的端口上转发外部流量。有关详细信息,请参阅此处:https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-connect-and-communicate-with-services#connections-from-external-clients