Exemplo n.º 1
0
        private async Task <TokenResponse> CallResourceOwner(CredentialModel cred)
        {
            var disco = await DiscoveryClient.GetAsync("http://localhost:5500");

            var tokenClient   = new TokenClient(disco.TokenEndpoint, "ro.client", "secret");
            var tokenResponse = await tokenClient.RequestResourceOwnerPasswordAsync(cred.Username, cred.Password, "superweb");

            return(tokenResponse);
        }
Exemplo n.º 2
0
        public async Task <IActionResult> PostAuth([FromBody] CredentialModel cred)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var tokenResponse = await CallResourceOwner(cred);

            if (tokenResponse.IsError)
            {
                return(Unauthorized());
            }
            return(Ok(tokenResponse.Json));
        }