Class UsersController
- Namespace
- Umbraco.Cms.Web.BackOffice.Controllers
- Assembly
- Umbraco.Web.BackOffice.dll
[Authorize(Policy = "SectionAccessUsers")]
[PrefixlessBodyModelValidator]
public class UsersController : BackOfficeNotificationsController
- Inheritance
-
UsersController
- Inherited Members
Constructors
UsersController(MediaFileManager, IOptionsSnapshot<ContentSettings>, IHostingEnvironment, ISqlContext, IImageUrlGenerator, IOptionsSnapshot<SecuritySettings>, IEmailSender, IBackOfficeSecurityAccessor, AppCaches, IShortStringHelper, IUserService, ILocalizedTextService, IUmbracoMapper, IOptionsSnapshot<GlobalSettings>, IBackOfficeUserManager, ILoggerFactory, LinkGenerator, IBackOfficeExternalLoginProviders, UserEditorAuthorizationHelper, IPasswordChanger<BackOfficeIdentityUser>, IHttpContextAccessor, IOptions<WebRoutingSettings>)
[Obsolete("Use constructor overload that has fileStreamSecurityValidator, scheduled for removal in v14")]
public UsersController(MediaFileManager mediaFileManager, IOptionsSnapshot<ContentSettings> contentSettings, IHostingEnvironment hostingEnvironment, ISqlContext sqlContext, IImageUrlGenerator imageUrlGenerator, IOptionsSnapshot<SecuritySettings> securitySettings, IEmailSender emailSender, IBackOfficeSecurityAccessor backofficeSecurityAccessor, AppCaches appCaches, IShortStringHelper shortStringHelper, IUserService userService, ILocalizedTextService localizedTextService, IUmbracoMapper umbracoMapper, IOptionsSnapshot<GlobalSettings> globalSettings, IBackOfficeUserManager backOfficeUserManager, ILoggerFactory loggerFactory, LinkGenerator linkGenerator, IBackOfficeExternalLoginProviders externalLogins, UserEditorAuthorizationHelper userEditorAuthorizationHelper, IPasswordChanger<BackOfficeIdentityUser> passwordChanger, IHttpContextAccessor httpContextAccessor, IOptions<WebRoutingSettings> webRoutingSettings)
Parameters
mediaFileManagerMediaFileManagercontentSettingsIOptionsSnapshot<ContentSettings>hostingEnvironmentIHostingEnvironmentsqlContextISqlContextimageUrlGeneratorIImageUrlGeneratorsecuritySettingsIOptionsSnapshot<SecuritySettings>emailSenderIEmailSenderbackofficeSecurityAccessorIBackOfficeSecurityAccessorappCachesAppCachesshortStringHelperIShortStringHelperuserServiceIUserServicelocalizedTextServiceILocalizedTextServiceumbracoMapperIUmbracoMapperglobalSettingsIOptionsSnapshot<GlobalSettings>backOfficeUserManagerIBackOfficeUserManagerloggerFactoryILoggerFactorylinkGeneratorLinkGeneratorexternalLoginsIBackOfficeExternalLoginProvidersuserEditorAuthorizationHelperUserEditorAuthorizationHelperpasswordChangerIPasswordChanger<BackOfficeIdentityUser>httpContextAccessorIHttpContextAccessorwebRoutingSettingsIOptions<WebRoutingSettings>
UsersController(MediaFileManager, IOptionsSnapshot<ContentSettings>, IHostingEnvironment, ISqlContext, IImageUrlGenerator, IOptionsSnapshot<SecuritySettings>, IEmailSender, IBackOfficeSecurityAccessor, AppCaches, IShortStringHelper, IUserService, ILocalizedTextService, IUmbracoMapper, IOptionsSnapshot<GlobalSettings>, IBackOfficeUserManager, ILoggerFactory, LinkGenerator, IBackOfficeExternalLoginProviders, UserEditorAuthorizationHelper, IPasswordChanger<BackOfficeIdentityUser>, IHttpContextAccessor, IOptions<WebRoutingSettings>, IFileStreamSecurityValidator)
[ActivatorUtilitiesConstructor]
public UsersController(MediaFileManager mediaFileManager, IOptionsSnapshot<ContentSettings> contentSettings, IHostingEnvironment hostingEnvironment, ISqlContext sqlContext, IImageUrlGenerator imageUrlGenerator, IOptionsSnapshot<SecuritySettings> securitySettings, IEmailSender emailSender, IBackOfficeSecurityAccessor backofficeSecurityAccessor, AppCaches appCaches, IShortStringHelper shortStringHelper, IUserService userService, ILocalizedTextService localizedTextService, IUmbracoMapper umbracoMapper, IOptionsSnapshot<GlobalSettings> globalSettings, IBackOfficeUserManager backOfficeUserManager, ILoggerFactory loggerFactory, LinkGenerator linkGenerator, IBackOfficeExternalLoginProviders externalLogins, UserEditorAuthorizationHelper userEditorAuthorizationHelper, IPasswordChanger<BackOfficeIdentityUser> passwordChanger, IHttpContextAccessor httpContextAccessor, IOptions<WebRoutingSettings> webRoutingSettings, IFileStreamSecurityValidator fileStreamSecurityValidator)
Parameters
mediaFileManagerMediaFileManagercontentSettingsIOptionsSnapshot<ContentSettings>hostingEnvironmentIHostingEnvironmentsqlContextISqlContextimageUrlGeneratorIImageUrlGeneratorsecuritySettingsIOptionsSnapshot<SecuritySettings>emailSenderIEmailSenderbackofficeSecurityAccessorIBackOfficeSecurityAccessorappCachesAppCachesshortStringHelperIShortStringHelperuserServiceIUserServicelocalizedTextServiceILocalizedTextServiceumbracoMapperIUmbracoMapperglobalSettingsIOptionsSnapshot<GlobalSettings>backOfficeUserManagerIBackOfficeUserManagerloggerFactoryILoggerFactorylinkGeneratorLinkGeneratorexternalLoginsIBackOfficeExternalLoginProvidersuserEditorAuthorizationHelperUserEditorAuthorizationHelperpasswordChangerIPasswordChanger<BackOfficeIdentityUser>httpContextAccessorIHttpContextAccessorwebRoutingSettingsIOptions<WebRoutingSettings>fileStreamSecurityValidatorIFileStreamSecurityValidator
Methods
GetById(int)
Gets a user by Id
[Authorize(Policy = "AdminUserEditsRequireAdmin")]
public ActionResult<UserDisplay?> GetById(int id)
Parameters
idint
Returns
- ActionResult<UserDisplay>
GetByIds(int[])
Get users by integer ids
[Authorize(Policy = "AdminUserEditsRequireAdmin")]
public ActionResult<IEnumerable<UserDisplay?>> GetByIds(int[] ids)
Parameters
idsint[]
Returns
- ActionResult<IEnumerable<UserDisplay>>
GetCurrentUserAvatarUrls()
Returns a list of the sizes of gravatar URLs for the user or null if the gravatar server cannot be reached
public ActionResult<string[]> GetCurrentUserAvatarUrls()
Returns
GetPagedUsers(int, int, string, Direction, string[]?, UserState?[]?, string)
Returns a paged users collection
public UsersController.PagedUserResult GetPagedUsers(int pageNumber = 1, int pageSize = 10, string orderBy = "username", Direction orderDirection = 0, string[]? userGroups = null, UserState?[]? userStates = null, string filter = "")
Parameters
pageNumberintpageSizeintorderBystringorderDirectionDirectionuserGroupsstring[]userStatesUserState[]filterstring
Returns
PostChangePassword(ChangingPasswordModel)
public Task<ActionResult<ModelWithNotifications<string?>>> PostChangePassword(ChangingPasswordModel changingPasswordModel)
Parameters
changingPasswordModelChangingPasswordModel
Returns
- Task<ActionResult<ModelWithNotifications<string>>>
PostClearAvatar(int)
[AppendUserModifiedHeader("id")]
[Authorize(Policy = "AdminUserEditsRequireAdmin")]
public ActionResult<string[]> PostClearAvatar(int id)
Parameters
idint
Returns
PostCreateUser(UserInvite)
Creates a new user
public Task<ActionResult<UserDisplay?>> PostCreateUser(UserInvite userSave)
Parameters
userSaveUserInvite
Returns
- Task<ActionResult<UserDisplay>>
PostDeleteNonLoggedInUser(int)
Deletes the non-logged in user provided id
[Authorize(Policy = "AdminUserEditsRequireAdmin")]
public IActionResult PostDeleteNonLoggedInUser(int id)
Parameters
idintUser Id
Returns
Remarks
Limited to users that haven't logged in to avoid issues with related records constrained with a foreign key on the user Id
PostDisableUsers(int[])
Disables the users with the given user ids
[Authorize(Policy = "AdminUserEditsRequireAdmin")]
public IActionResult PostDisableUsers(int[] userIds)
Parameters
userIdsint[]
Returns
PostEnableUsers(int[])
Enables the users with the given user ids
[Authorize(Policy = "AdminUserEditsRequireAdmin")]
public IActionResult PostEnableUsers(int[] userIds)
Parameters
userIdsint[]
Returns
PostInviteUser(UserInvite)
Invites a user
public Task<ActionResult<UserDisplay?>> PostInviteUser(UserInvite userSave)
Parameters
userSaveUserInvite
Returns
- Task<ActionResult<UserDisplay>>
Remarks
This will email the user an invite and generate a token that will be validated in the email
PostSaveUser(UserSave)
Saves a user
public ActionResult<UserDisplay?> PostSaveUser(UserSave userSave)
Parameters
userSaveUserSave
Returns
- ActionResult<UserDisplay>
PostSetAvatar(int, IList<IFormFile>)
[AppendUserModifiedHeader("id")]
[Authorize(Policy = "AdminUserEditsRequireAdmin")]
public IActionResult PostSetAvatar(int id, IList<IFormFile> file)
Parameters
Returns
PostSetUserGroupsOnUsers(string[], int[])
[Authorize(Policy = "AdminUserEditsRequireAdmin")]
public IActionResult PostSetUserGroupsOnUsers(string[] userGroupAliases, int[] userIds)
Parameters
Returns
PostUnlockUsers(int[])
Unlocks the users with the given user ids
[Authorize(Policy = "AdminUserEditsRequireAdmin")]
public Task<IActionResult> PostUnlockUsers(int[] userIds)
Parameters
userIdsint[]