.net core 仅当在任何其他web API中调用的web API属于同一域--.Net core 3.1+时,如何绕过授权过程;身份服务器

.net core 仅当在任何其他web API中调用的web API属于同一域--.Net core 3.1+时,如何绕过授权过程;身份服务器,.net-core,identityserver4,.net Core,Identityserver4,我想在另一个web API中访问我的一个web API端点。但只有在这种情况下才需要跳过授权过程。这意味着我想在不使用access_令牌的情况下访问上述端点。但要通过任何客户端应用程序(移动、网络)访问它,都需要访问令牌。可能吗 [HttpGet("{id:int}")] [Authorize] public async Task<IActionResult> Get([FromRoute] int id) { try { // some code

我想在另一个web API中访问我的一个web API端点。但只有在这种情况下才需要跳过授权过程。这意味着我想在不使用access_令牌的情况下访问上述端点。但要通过任何客户端应用程序(移动、网络)访问它,都需要访问令牌。可能吗

[HttpGet("{id:int}")]
[Authorize]
public async Task<IActionResult> Get([FromRoute] int id)
{
    try
    {
        // some code
        return Ok(true);
    }
    catch (Exception ex)
    {
        throw ex;
    }
}
[HttpGet(“{id:int}”)]
[授权]
公共异步任务Get([FromRoute]int id)
{
尝试
{
//一些代码
返回Ok(true);
}
捕获(例外情况除外)
{
掷骰子;
}
}

您需要一个包含授权的API网关项目,您的客户端可以访问该项目。然后,您可以将另一个项目隐藏在API网关后面。在这种情况下,您的webapi不需要任何授权,它们可以在没有授权的情况下相互调用

有关此方法的更多信息,请参见:


在我的例子中,我有一个API,可由移动客户端访问。我希望在另一个API中访问同一个API,但仅在这种情况下需要绕过授权。我可以这样做吗?另一方面,您可以使用客户端\u凭证授予类型为第二个API生成访问\u令牌。当您从第二个API调用第一个API时,请发送您的访问令牌,该令牌使用客户端凭据gran type获取。有了这个senario你不需要绕过授权