public async Task <ResponseMessage <Organization> > GetOrganization(string userId, [FromRoute] string id) { ResponseMessage <Organization> response = new ResponseMessage <Organization>(); //var oIds = await _permissionExpansionManager.GetOrganizationOfPermission(userId, "OrganizationRetrieve"); //if (oIds == null || oIds.Count == 0 || !oIds.Contains(id)) //{ // response.Code = ResponseCodeDefines.NotAllow; // return response; //} response.Extension = await _organizationsManager.FindByIdAsync(id, HttpContext.RequestAborted); if (response.Extension == null) { response.Code = ResponseCodeDefines.NotFound; return(response); } return(response); }
public async Task <IActionResult> Userinfo() { var user = await _extendUserManager.GetUserAsync(User); if (user == null) { return(BadRequest(new OpenIdConnectResponse { Error = OpenIdConnectConstants.Errors.InvalidGrant, ErrorDescription = "The user profile is no longer available." })); } var claims = new JObject(); // Note: the "sub" claim is a mandatory claim and must be included in the JSON response. claims[OpenIdConnectConstants.Claims.Subject] = await _extendUserManager.GetUserIdAsync(user); claims[OpenIdConnectConstants.Claims.Name] = await _extendUserManager.GetUserNameAsync(user); claims[OpenIdConnectConstants.Claims.Picture] = user.Avatar; claims[OpenIdConnectConstants.Claims.Nickname] = user.TrueName; claims["Organization"] = user.OrganizationId; claims["City"] = _organizationsManager.FindByIdAsync(user.FilialeId, HttpContext.RequestAborted)?.Result?.City ?? ""; if (User.HasClaim(OpenIdConnectConstants.Claims.Scope, OpenIdConnectConstants.Scopes.Email)) { claims[OpenIdConnectConstants.Claims.Email] = await _extendUserManager.GetEmailAsync(user); claims[OpenIdConnectConstants.Claims.EmailVerified] = await _extendUserManager.IsEmailConfirmedAsync(user); } if (User.HasClaim(OpenIdConnectConstants.Claims.Scope, OpenIdConnectConstants.Scopes.Phone)) { claims[OpenIdConnectConstants.Claims.PhoneNumber] = await _extendUserManager.GetPhoneNumberAsync(user); claims[OpenIdConnectConstants.Claims.PhoneNumberVerified] = await _extendUserManager.IsPhoneNumberConfirmedAsync(user); } if (User.HasClaim(OpenIdConnectConstants.Claims.Scope, OpenIddictConstants.Scopes.Roles)) { claims[OpenIddictConstants.Claims.Roles] = JArray.FromObject(await _extendUserManager.GetRolesAsync(user)); } // Note: the complete list of standard claims supported by the OpenID Connect specification // can be found here: http://openid.net/specs/openid-connect-core-1_0.html#StandardClaims return(Json(claims)); }