mirror of
https://github.com/bitwarden/server
synced 2025-12-26 05:03:18 +00:00
* Log events from the import organization flow * Use an interface for the `OrganizationUser` object used to log events * Log import events as being from the public api if they are * Add logging for created groups * Log proper group ids * Fix tests * Also log update events for groups * Remove private API `import` endpoint * Make `eventSystemUser` non-nullable for `ImportAsync` * Fix tests * Delete `ImportOrganizationUsersRequestModel` * Fix tests
47 lines
1.4 KiB
C#
47 lines
1.4 KiB
C#
using System.ComponentModel.DataAnnotations;
|
|
using Bit.Core.AdminConsole.Interfaces;
|
|
using Bit.Core.Enums;
|
|
using Bit.Core.Models;
|
|
using Bit.Core.Models.Data;
|
|
using Bit.Core.Utilities;
|
|
|
|
#nullable enable
|
|
|
|
namespace Bit.Core.Entities;
|
|
|
|
public class OrganizationUser : ITableObject<Guid>, IExternal, IOrganizationUser
|
|
{
|
|
public Guid Id { get; set; }
|
|
public Guid OrganizationId { get; set; }
|
|
public Guid? UserId { get; set; }
|
|
[MaxLength(256)]
|
|
public string? Email { get; set; }
|
|
public string? Key { get; set; }
|
|
public string? ResetPasswordKey { get; set; }
|
|
public OrganizationUserStatusType Status { get; set; }
|
|
public OrganizationUserType Type { get; set; }
|
|
|
|
[MaxLength(300)]
|
|
public string? ExternalId { get; set; }
|
|
public DateTime CreationDate { get; internal set; } = DateTime.UtcNow;
|
|
public DateTime RevisionDate { get; internal set; } = DateTime.UtcNow;
|
|
public string? Permissions { get; set; }
|
|
public bool AccessSecretsManager { get; set; }
|
|
|
|
public void SetNewId()
|
|
{
|
|
Id = CoreHelpers.GenerateComb();
|
|
}
|
|
|
|
public Permissions? GetPermissions()
|
|
{
|
|
return string.IsNullOrWhiteSpace(Permissions) ? null
|
|
: CoreHelpers.LoadClassFromJsonData<Permissions>(Permissions);
|
|
}
|
|
|
|
public void SetPermissions(Permissions permissions)
|
|
{
|
|
Permissions = CoreHelpers.ClassToJsonData(permissions);
|
|
}
|
|
}
|