powsid package

目次

powsid package#

class powsid.SID(data: Array)#

ベースクラス: object

Windowsのセキュリティ識別子。

サンプル

>>> sid1 = SID.create_wellknownsid(WellKnownSIDType.NT_AUTHORITY)
>>> sid2 = SID.lookup_user()
>>> sid3 = SID.lookup_computer()
>>> sid4 = SID.lookup_accountsid(None, None)
class AccountInfo(name: str, refdomainname: str, use: SIDNameUse)#

ベースクラス: NamedTuple

アカウント情報。

name: str#

Alias for field number 0

refdomainname: str#

Alias for field number 1

use: SIDNameUse#

Alias for field number 2

CURRENT_REVISION: Final = 1#

現在のリビジョン。

MAX_SUB_AUTHORITIES: Final = 15#

サブ認証値の最大個数。

RECOMMENDED_SUB_AUTHORITIES: Final = 1#

サブ認証値の推奨個数。

property bytes: bytes#

SIDのバイト表現を取得します。

static create_wellknownsid(wellknownsidtype: int | WellKnownSIDType, domain_sid: SID | None = None) SID#

既知のSIDを作成します。

パラメータ:
  • wellknownsidtype (int | WellKnownSIDType) -- 既知SID種類。

  • domain_sid (SID | None, optional) -- ドメインを識別するSID。Noneの場合はローカルコンピューターです。

例外:

WinError -- SIDの取得に失敗。

property domainsid: SID#

ドメインSIDを取得します。

例外:

WinError -- 取得失敗。

static from_auths(idauth: int, subauths: Sequence[int], revision_level: int = 1) SID#
static from_strsid(s: str) SID#

文字列SIDからSIDを作成します。

例外:

WinError -- 変換の失敗。

static get_required_len(subauth_count: int) int#

サブ認証値数からSIDに必要なバイト数を返します。

get_subsidauth_at(index: int) int#

指定位置のサブ認証値を取得します。

例外:

WinError -- 取得失敗。

has_equal_domain(other: SID) bool | NotImplementedType#

SIDのドメインが一致する場合は真を返します。

has_equal_prefix(other: SID) bool#

SIDの最後のサブ認証値以外が一致する場合は真を返します。

property identifyauth: int#

主要認証値を取得・設定します。

例外:

WinError -- 取得・設定失敗。

property is_valid: bool#

有効なSIDならば真を返します。

is_wellknownsid(type: WellKnownSIDType | int) bool#

SIDが指定した種類の既知SIDの場合は真を返します。

static lookup_accountname(accountname: str | None = None, sysname: str | None = None) SID#

アカウント名からSIDを検索します。

パラメータ:
  • accountname (str | None, optional) -- アカウント名。ドメイン名も指定する場合は「domain_nameuser_name」形式を用います。

  • sysname (str | None, optional) -- リモートコンピューターの名前。Noneの場合はローカルコンピューターです。

例外:

WinError -- 検索の失敗。

lookup_accountsid(sysname: str | None = None) AccountInfo#

アカウント情報を取得します。

例外:

WinError -- 取得失敗。

static lookup_currentuser() SID#

スレッドの現在のユーザーのSIDを検索します。

例外:

WinError -- 検索の失敗

static lookup_localcomputer() SID#

ローカルコンピューターのSIDを検索します。

例外:

WinError -- 検索の失敗

set_subsidauth_at(index: int, value: int) None#

指定位置のサブ認証値を設定します。

例外:

WinError -- 設定失敗。

property subauthcount: int#

サブ認証値数を取得・設定します。

例外:

WinError -- サブ認証値数の取得失敗。

property subauths: list[int]#

サブ認証値を取得・設定します。

例外:
  • WinError -- 取得失敗。

  • ValueError -- 設定時のサブ認証値の個数不一致。

class powsid.SIDNameUse(*values)#

ベースクラス: IntEnum

SID_NAME_USE列挙型

ALIAS = 4#
COMPUTER = 9#
DELETED_ACCOUNT = 6#
DOMAIN = 3#
GROUP = 2#
INVALID = 7#
LABEL = 10#
LOGON_SESSION = 11#
UNKNOWN = 8#
USER = 1#
WELL_KNOWN_GROUP = 5#
class powsid.WellKnownSIDType(*values)#

ベースクラス: IntEnum

既知SID種類。

ACCOUNT_ADMINISTRATOR = 38#
ACCOUNT_CERT_ADMINS = 46#
ACCOUNT_CLONEABLE_CONTROLLERS = 100#
ACCOUNT_COMPUTERS = 44#
ACCOUNT_CONTROLLERS = 45#
ACCOUNT_DEFAULT_SYSTEM_MANAGED = 110#
ACCOUNT_DOMAIN_ADMINS = 41#
ACCOUNT_DOMAIN_GUESTS = 43#
ACCOUNT_DOMAIN_USERS = 42#
ACCOUNT_ENTERPRISE_ADMINS = 48#
ACCOUNT_ENTERPRISE_KEY_ADMINS = 114#
ACCOUNT_GUEST = 39#
ACCOUNT_KEY_ADMINS = 113#
ACCOUNT_KRBTGT = 40#
ACCOUNT_POLICY_ADMINS = 49#
ACCOUNT_PROTECTED_USERS = 107#
ACCOUNT_RAS_AND_IAS_SERVERS = 50#
ACCOUNT_READONLY_CONTROLLERS = 75#
ACCOUNT_SCHEMA_ADMINS = 47#
ANONYMOUS = 13#
APPLICATION_PACKAGE_AUTHORITY = 83#
AUTHENTICATED_USER = 17#
AUTHENTICATION_AUTHORITY_ASSERTED = 103#
AUTHENTICATION_FRESH_KEY_AUTH = 118#
AUTHENTICATION_KEY_PROPERTY_ATTESTATION = 117#
AUTHENTICATION_KEY_PROPERTY_MFA = 116#
AUTHENTICATION_KEY_TRUST = 115#
AUTHENTICATION_SERVICE_ASSERTED = 104#
BATCH = 10#
BUILTIN_ACCESS_CONTROL_ASSISTANCE_OPERATORS = 101#
BUILTIN_ACCOUNT_OPERATORS = 30#
BUILTIN_ADMINISTRATORS = 26#
BUILTIN_ANY_PACKAGE = 84#
BUILTIN_AUTHORIZATION_ACCESS = 59#
BUILTIN_BACKUP_OPERATORS = 33#
BUILTIN_CERT_SVC_D_COM_ACCESS_GROUP = 78#
BUILTIN_CRYPTO_OPERATORS = 64#
BUILTIN_DCOM_USERS = 61#
BUILTIN_DEFAULT_SYSTEM_MANAGED_GROUP = 111#
BUILTIN_DEVICE_OWNERS = 119#
BUILTIN_DOMAIN = 25#
BUILTIN_EVENT_LOG_READERS_GROUP = 76#
BUILTIN_GUESTS = 28#
BUILTIN_HYPER_V_ADMINS = 99#
BUILTIN_INCOMING_FOREST_TRUST_BUILDERS = 56#
BUILTIN_I_USERS = 62#
BUILTIN_NETWORK_CONFIGURATION_OPERATORS = 37#
BUILTIN_OPEN_SSH_USERS = 121#
BUILTIN_PERF_LOGGING_USERS = 58#
BUILTIN_PERF_MONITORING_USERS = 57#
BUILTIN_POWER_USERS = 29#
BUILTIN_PRE_WINDOWS2000_COMPATIBLE_ACCESS = 35#
BUILTIN_PRINT_OPERATORS = 32#
BUILTIN_RDS_ENDPOINT_SERVERS = 96#
BUILTIN_RDS_MANAGEMENT_SERVERS = 97#
BUILTIN_RDS_REMOTE_ACCESS_SERVERS = 95#
BUILTIN_REMOTE_DESKTOP_USERS = 36#
BUILTIN_REMOTE_MANAGEMENT_USERS = 102#
BUILTIN_REPLICATOR = 34#
BUILTIN_STORAGE_REPLICA_ADMINS = 112#
BUILTIN_SYSTEM_OPERATORS = 31#
BUILTIN_TERMINAL_SERVER_LICENSE_SERVERS = 60#
BUILTIN_USERS = 27#
BUILTIN_USER_MODE_HARDWARE_OPERATORS = 120#
CACHEABLE_PRINCIPALS_GROUP = 72#
CAPABILITY_APPOINTMENTS = 108#
CAPABILITY_CONTACTS = 109#
CAPABILITY_DOCUMENTS_LIBRARY = 91#
CAPABILITY_ENTERPRISE_AUTHENTICATION = 93#
CAPABILITY_INTERNET_CLIENT = 85#
CAPABILITY_INTERNET_CLIENT_SERVER = 86#
CAPABILITY_MUSIC_LIBRARY = 90#
CAPABILITY_PICTURES_LIBRARY = 88#
CAPABILITY_PRIVATE_NETWORK_CLIENT_SERVER = 87#
CAPABILITY_REMOVABLE_STORAGE = 94#
CAPABILITY_SHARED_USER_CERTIFICATES = 92#
CAPABILITY_VIDEOS_LIBRARY = 89#
CONSOLE_LOGON = 81#
CREATOR_GROUP = 4#
CREATOR_GROUP_SERVER = 6#
CREATOR_OWNER = 3#
CREATOR_OWNER_RIGHTS = 71#
CREATOR_OWNER_SERVER = 5#
DIALUP = 8#
DIGEST_AUTHENTICATION = 52#
ENTERPRISE_CONTROLLERS = 15#
ENTERPRISE_READONLY_CONTROLLERS = 74#
HIGH_LABEL = 68#
INTERACTIVE = 11#
I_USER = 63#
LOCAL = 2#
LOCAL_ACCOUNT = 105#
LOCAL_ACCOUNT_AND_ADMINISTRATOR = 106#
LOCAL_LOGON = 80#
LOCAL_SERVICE = 23#
LOCAL_SYSTEM = 22#
LOGON_IDS = 21#
LOW_LABEL = 66#
MEDIUM_LABEL = 67#
MEDIUM_PLUS_LABEL = 79#
NETWORK = 9#
NETWORK_SERVICE = 24#
NEW_ENTERPRISE_READONLY_CONTROLLERS = 77#
NON_CACHEABLE_PRINCIPALS_GROUP = 73#
NTLM_AUTHENTICATION = 51#
NT_AUTHORITY = 7#
NULL = 0#
OTHER_ORGANIZATION = 55#
PROXY = 14#
REMOTE_LOGON_ID = 20#
RESTRICTED_CODE = 18#
SELF = 16#
SERVICE = 12#
SYSTEM_LABEL = 69#
S_CHANNEL_AUTHENTICATION = 53#
TERMINAL_SERVER = 19#
THIS_ORGANIZATION = 54#
THIS_ORGANIZATION_CERTIFICATE = 82#
UNTRUSTED_LABEL = 65#
USER_MODE_DRIVERS = 98#
WORLD = 1#
WRITE_RESTRICTED_CODE = 70#