微服务网关从零搭建——(五)修改网关身份验证指定部分

由于之前第四篇中绑定身份信息部分太过于繁琐 现将身份验证指定信息放到配置文件中 

首先注释原先验证部分 参考如下 

修改startup 

 var auths=services.AddAuthentication();
            var authdatas = Configuration.GetSection("Setting:AuthParams").GetChildren();
            foreach (var item in authdatas)
            {
                auths.AddIdentityServerAuthentication(item.GetSection("AuthScheme").Value, options =>
                {
                    options.Authority = item.GetSection("AuthUrl").Value;
                    options.ApiName = item.GetSection("AuthApiName").Value;
                    options.SupportedTokens = SupportedTokens.Both;
                    options.RequireHttpsMetadata = false;
                });
            }
改动部分

完整截图参考:

修改 appsettings.json

 "AuthParams": [
      {
        "AuthScheme": "OcelotKey", //需要和ReRoutes中的AuthenticationProviderKey一致
        "AuthUrl": "http://192.168.66.241:7500", // 验证服务地址 注意 必须带有http
        "AuthApiName": "demoAPi" //和 需要被验证服务的服务名称一致 即ApiResources内配置的一致
      },
      {
        "AuthScheme": "OcelotKey3", //需要和ReRoutes中的AuthenticationProviderKey一致
        "AuthUrl": "http://192.168.66.241:7500", // 验证服务地址 注意 必须带有http
        "AuthApiName": "demoAPi3" //和 需要被验证服务的服务名称一致 即ApiResources内配置的一致
      }
    ]
修改部分

如图:

改完后即可只改变配置文件而不需要再改动代码部分

原文地址:https://www.cnblogs.com/nontracey/p/9969044.html