小编Art*_*ros的帖子

在多个数据库上执行SQL查询

我知道我的帖子与这个论坛中的其他帖子有着非常相似的标题,但我真的找不到我需要的答案.

这是我的问题,我在Windows Server上运行了一个SQL Server.在我的SQL Server中,我有大约30个数据库.它们都具有相同的表和相同的存储过程.

现在,问题是,我需要在所有这些数据库中运行这个庞大的脚本.我希望我只能对我的所有数据库做一次.

我尝试了一些事情,比如去"查看">>注册服务器>>本地服务器组>>新服务器注册.但这个解决方案适用于许多服务器,而不是很多数据库

我知道我可以通过输入数据库名称来实现,但查询真的很大,所以在所有数据库中运行都需要很长时间.

有没有人知道这是否可能?

sql database sql-server

5
推荐指数
3
解决办法
2万
查看次数

Sustainsys Saml2 Handler AuthenticateAsync() 方法操作未实现

我正在尝试在 Saml2 的 Asp net Core 应用程序中进行一个简单的实现,以与 Ad FS 服务器集成。我不明白为什么我会收到这个错误。我从 gitHub 下载了示例并尝试在我的应用程序中调整它。

NotImplementedException: The method or operation is not implemented.
Sustainsys.Saml2.AspNetCore2.Saml2Handler.AuthenticateAsync()
Run Code Online (Sandbox Code Playgroud)

这是我的实现,我的应用程序在 Asp Net Core 上运行

启动时

                services
                    .AddAuthentication(sharedOptions =>
                    {
                        sharedOptions.DefaultSignInScheme = CookieAuthenticationDefaults.AuthenticationScheme;
                        sharedOptions.DefaultChallengeScheme = Saml2Defaults.Scheme;
                    })
                    .AddSaml2(options =>
                    {
                        options.SPOptions.EntityId = new EntityId("http://myAdfsServer.myDomain.com/adfs/services/trust");
                        options.SPOptions.ReturnUrl = new Uri("https://localhost:5000");
                        options.IdentityProviders.Add(
                            new IdentityProvider(new EntityId("http://myAdfsServer.myDomain.com/adfs/services/trust"), options.SPOptions)
                            {
                               LoadMetadata = true,
                               MetadataLocation = "https://myAdfsServer.myDomain.com/FederationMetadata/2007-06/FederationMetadata.xml"
                                //MetadataLocation = "FederationMetadata.xml"
                            });

                        //options.SPOptions.ServiceCertificates.Add(new X509Certificate2(certificate.ToString()));
                    })
                    .AddCookie();

Run Code Online (Sandbox Code Playgroud)

在我的控制器上 尝试类似于Sustainsys SAML2 Sample for ASP.NET Core WebAPI without Identity …

adfs saml-2.0 asp.net-core sustainsys-saml2

5
推荐指数
1
解决办法
728
查看次数

无法使用 Sustainsys 的 Saml2 注销

这应该将我的应用程序重定向到我的 AdFs 注销页面,然后将我重定向回我的应用程序。然而,它只是将我重定向到我的路线“/logout”。查看我的 ADFS 服务器上的日志,没有任何反应。

        [AllowAnonymous]
        [HttpGet]
        [Route("api/logout")]
        public async Task<IActionResult> Logout()
        {
            return SignOut(new AuthenticationProperties()
            {
                RedirectUri = "/logout"
            },
            Saml2Defaults.Scheme);
        }

Run Code Online (Sandbox Code Playgroud)

登录工作正常。我什至尝试过同样的方法,但不起作用。这里,ReturnUrl 方法从 HttpContext.Response.Header 获取位置。当我尝试注销时,该位置始终为空。

        [AllowAnonymous]
        [HttpGet]
        [Route("api/login")]
        public async Task<string> LoginAdfs()
        {

            string redirectUri =  _appSettings.Saml.SpEntityId;

            await HttpContext.ChallengeAsync(new AuthenticationProperties
            {
                RedirectUri = string.Concat(redirectUri, "/autenticado")
            });
            return ReturnUrl();
        }
Run Code Online (Sandbox Code Playgroud)

知道会发生什么吗?

更新 21/11/2019

结果 Saml2Handler 根本就没有尝试将请求发送到服务器。我在输出窗口上收到这些消息:

Sustainsys.Saml2.AspNetCore2.Saml2Handler: Debug: Initiating logout, checking requirements for federated logout
  Issuer of LogoutNameIdentifier claim (should be Idp entity id): 
  Issuer is a known Idp: …
Run Code Online (Sandbox Code Playgroud)

saml saml-2.0 asp.net-core sustainsys-saml2

2
推荐指数
1
解决办法
4367
查看次数

如何为canvas HTML 的文本和背景设置不同的颜色?

我正在使用画布创建一个动态的命运之轮。每当我添加新项目时,它都会均匀地重新计算空间。我能够使用画布实现这一点。我知道这canvas.fillStyle = somecolor;会将我想要的颜色设置为正在创建的切片。我还想在每个切片中添加一些文本。但是,我无法找到一种方法让画布绘制与切片颜色不同的文本。这可能吗?

这就是我正在做的

  const drawSlice = useCallback((deg: number, color: string, text:string) => {
    if (!canvasRef.current) {
        return;
      }
      const canvas: HTMLCanvasElement = canvasRef.current;
      const ctx = canvas.getContext("2d");

      const width = canvas.width;
      const center = width/2;
      const sliceDeg = 360 / wheelItems.length;

      if (ctx) {
        ctx.beginPath();
        ctx.fillStyle = color;
        ctx.fillText(text, center, deg2rad(deg));

        ctx.moveTo(center, center);
        ctx.arc(center, center, width / 2, deg2rad(deg), deg2rad(deg + sliceDeg));
        ctx.lineTo(center, center);
        ctx.fill();

      }
  },[wheelItems.length])
Run Code Online (Sandbox Code Playgroud)

javascript css canvas html5-canvas reactjs

0
推荐指数
1
解决办法
2394
查看次数