DotNetDupe
4.0.6
C++17/20 Implementation of the .NET Base Class Library (BCL)
Toggle main menu visibility
Loading...
Searching...
No Matches
UserPrincipal.h
Go to the documentation of this file.
1
3
4
#pragma once
5
6
#include "
Common.h
"
7
#include "
System/Object.h
"
8
#include "
System/String.h
"
9
#include "
System/Collections/Generic/List.h
"
10
11
namespace
DotNetDupe
{
12
namespace
System
{
13
namespace
Security
{
14
namespace
Principal
{
15
18
enum class
UserClass
{
19
Guest
= 0,
20
Normal = 1,
21
Admin
= 2,
22
System
= 3
23
};
24
27
struct
UserInfo
{
28
String
sUsername
;
29
String
sDomain
;
30
String
sSidOrUid
;
31
UserClass
eUserClass
;
32
bool
bIsDisabled
;
33
bool
bIsPasswordRequired
;
34
bool
bIsAccountLocked
;
35
Collections::Generic::List<String>
lstGroups
;
36
Collections::Generic::List<String>
lstPermissions
;
37
};
38
41
class
UserPrincipal
:
public
Object
{
42
public
:
44
DOTNETDUPE_API
UserPrincipal
();
45
47
DOTNETDUPE_API
virtual
~UserPrincipal
();
48
51
DOTNETDUPE_API
static
Collections::Generic::List<UserInfo>
EnumerateUsers
();
52
56
DOTNETDUPE_API
static
UserInfo
GetUser
(
const
String
& sUsername);
57
60
DOTNETDUPE_API
static
UserInfo
GetCurrent
();
61
};
62
63
}
64
}
65
}
66
}
Common.h
Defines common cross-platform macros, export decorators, and fundamental types.
DOTNETDUPE_API
#define DOTNETDUPE_API
Platform-specific linkage decoration for exporting or importing library symbols.
Definition
Common.h:20
List.h
Represents a strongly typed list of objects that can be accessed by index mirroring ....
Object.h
Base object class for DotNetDupe mirroring .NET System.Object.
String.h
High-performance UTF-8 / UTF-16 string manipulation class mirroring .NET System.String.
DotNetDupe::System::Collections::Generic::List
Represents a strongly typed list of objects accessible by index.
Definition
List.h:29
DotNetDupe::System::Object
Supports all classes in the DotNetDupe class hierarchy.
Definition
Object.h:18
DotNetDupe::System::Security::Principal::UserPrincipal::EnumerateUsers
static Collections::Generic::List< UserInfo > EnumerateUsers()
Enumerates all registered local user accounts on the host system.
Definition
UserPrincipal.cpp:177
DotNetDupe::System::Security::Principal::UserPrincipal::GetCurrent
static UserInfo GetCurrent()
Retrieves account information for the currently executing process user.
Definition
UserPrincipal.cpp:251
DotNetDupe::System::Security::Principal::UserPrincipal::GetUser
static UserInfo GetUser(const String &sUsername)
Retrieves account information for a specified username.
Definition
UserPrincipal.cpp:241
DotNetDupe::System::Security::Principal::UserPrincipal::UserPrincipal
UserPrincipal()
Initializes a new instance of the UserPrincipal class.
Definition
UserPrincipal.cpp:32
DotNetDupe::System::String
Represents text as a sequence of UTF-8 code units with culture-invariant operations.
Definition
String.h:74
DotNetDupe::System::Security::Principal
Definition
UserPrincipal.h:14
DotNetDupe::System::Security::Principal::UserClass
UserClass
Defines user account classification categories.
Definition
UserPrincipal.h:18
DotNetDupe::System::Security::Principal::UserClass::Guest
@ Guest
Guest or anonymous account.
Definition
UserPrincipal.h:19
DotNetDupe::System::Security::Principal::UserClass::Admin
@ Admin
Administrative or root user account.
Definition
UserPrincipal.h:21
DotNetDupe::System::Security
Definition
HMACSHA256.h:12
DotNetDupe::System
Definition
Action.h:11
DotNetDupe
Definition
IServiceCollection.h:7
DotNetDupe::System::Security::Principal::UserInfo
Represents platform user account information and privileges.
Definition
UserPrincipal.h:27
DotNetDupe::System::Security::Principal::UserInfo::bIsPasswordRequired
bool bIsPasswordRequired
Indicates whether a password is required.
Definition
UserPrincipal.h:33
DotNetDupe::System::Security::Principal::UserInfo::bIsDisabled
bool bIsDisabled
Indicates whether the account is disabled.
Definition
UserPrincipal.h:32
DotNetDupe::System::Security::Principal::UserInfo::eUserClass
UserClass eUserClass
Classification level of the user.
Definition
UserPrincipal.h:31
DotNetDupe::System::Security::Principal::UserInfo::sSidOrUid
String sSidOrUid
Security identifier (SID on Windows, UID on POSIX).
Definition
UserPrincipal.h:30
DotNetDupe::System::Security::Principal::UserInfo::sDomain
String sDomain
Domain or host machine name.
Definition
UserPrincipal.h:29
DotNetDupe::System::Security::Principal::UserInfo::sUsername
String sUsername
User login or account name.
Definition
UserPrincipal.h:28
DotNetDupe::System::Security::Principal::UserInfo::lstPermissions
Collections::Generic::List< String > lstPermissions
List of assigned permission strings.
Definition
UserPrincipal.h:36
DotNetDupe::System::Security::Principal::UserInfo::lstGroups
Collections::Generic::List< String > lstGroups
List of security groups the user belongs to.
Definition
UserPrincipal.h:35
DotNetDupe::System::Security::Principal::UserInfo::bIsAccountLocked
bool bIsAccountLocked
Indicates whether the account is currently locked out.
Definition
UserPrincipal.h:34
Include
System
Security
Principal
UserPrincipal.h
Generated by
1.18.0