using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using Tiku.Application.Security; namespace Tiku.Api.Controllers; [ApiController] [ApiExplorerSettings(IgnoreApi = true)] [Route("api/_security")] public sealed class SecurityDiagnosticsController( ICurrentUser currentUser, ITenantContext currentTenant) : ControllerBase { [Authorize(Policy = TikuPolicies.AuthenticatedUser)] [HttpGet("authenticated")] public ActionResult Authenticated() { return Ok(new { currentUser.UserId, currentUser.IsAuthenticated }); } [Authorize(Policy = TikuPolicies.CurrentTenantMember)] [HttpGet("tenant-member")] public ActionResult TenantMember() { return Ok(new { currentTenant.TenantId }); } [Authorize(Policy = TikuPolicies.TenantAdmin)] [HttpGet("tenant-admin")] public ActionResult TenantAdmin() { return Ok(new { currentTenant.TenantId }); } }