SIDをユーザー/グループ名に変換し、ユーザーをSIDに変換する方法は?
SID (セキュリティ識別子 )は、ユーザー、グループ、コンピューター、またはその他のセキュリティオブジェクトがWindowsまたはActiveDirectoryドメインで作成されたときに割り当てられる一意の識別子です。 Windowsは、ユーザー名ではなくSIDを使用して、ネットワーク共有フォルダー、レジストリキー、ファイルシステムオブジェクト(NTFSアクセス許可)、プリンターなどのさまざまなリソースへのアクセスを制御します。この記事では、検索する簡単な方法をいくつか紹介します。ユーザー、グループ、またはコンピューターのSID、およびその逆の手順–既知のSIDでオブジェクト名を取得する方法。
SID(Windowsセキュリティ識別子)とは何ですか?
前述したように、SID(セキュリティ識別子)を使用すると、特定のスコープ(ドメインまたはローカルコンピューター)内のユーザー、グループ、またはコンピューターを一意に識別できます。 SIDは次の形式の文字列です:
S-1-5-21–489056535-1467421822-2524099697–1231
- 489056535-1467421822-2524099697-これは、SIDを発行したドメインの一意の識別子です(この部分は、同じドメイン内のすべてのオブジェクトで同じになります):
- 1231 –オブジェクトの相対セキュリティ識別子(RID)。 1000から始まり、新しいオブジェクトごとに1ずつ増加します。 FSMOロールRIDマスターを持つドメインコントローラーによって発行されます。
ActiveDirectoryオブジェクトのSIDはntds.dit
に保存されます データベース、およびHKEY_LOCAL_MACHINE\SAM\SAM
のローカルWindowsSecurityAccount Manager(SAM)データベース内のローカルユーザーとグループのSID レジストリキー。
いわゆるよく知られているSIDがあります Windowsで。これらは、任意のWindowsコンピューター上の組み込みユーザーおよびグループのSIDです。例:
-
S-1-5-32-544
–組み込みの管理者グループ -
S-1-5-32-545
–ローカルユーザー -
S-1-5-32-555
–RDP経由でのログインが許可されているリモートデスクトップユーザーグループ -
S-1-5-domainID-500
–組み込みのWindows管理者アカウント - その他
Windowsでは、さまざまなツールを使用して、SID->名前とユーザー名-> SIDを変換できます:whoamiツール、wmic、WMIクラス、PowerShell、またはサードパーティのユーティリティ。
ローカルユーザーセキュリティ識別子(SID)を見つける方法
ローカルユーザーアカウントのSIDを取得するには、 wmicを使用できます このツールを使用すると、コンピューターのWMI名前空間を照会できます。ローカルユーザーtest_userのSIDを取得するには、WMICコマンドを使用できます。
wmic useraccount where name='test_user' get sid
WMIリポジトリが破損している場合、このコマンドはエラーを返す可能性があります。このガイドを使用して、WMIリポジトリを修復します。
上記のコマンドは、指定されたローカルユーザーのSIDを返しました。この例では– S-1-5-21-1175659216-1321616944-201305354-1005
。
すべてのローカルWindowsユーザーのSIDを一覧表示するには、次のコマンドを実行します。
wmic useraccount get name,sid
現在のユーザーのSIDを取得する必要がある場合は、次のコマンドを実行します。
wmic useraccount where name='%username%' get sid
PowerShellから直接WMIにクエリを実行できます:
(Get-WmiObject -Class win32_userAccount -Filter "name='test_user' and domain='$env:computername'").SID
Get-CimInstance
を使用する必要があります Get-WmiObject
の代わりに コマンドレット。
ただし、ローカルユーザーとグループを管理するための組み込みのPowerShellモジュール(Microsoft.PowerShell.LocalAccounts
)を使用すると、ローカルユーザーのSIDを取得するのがさらに簡単になります。 。
Get-LocalUser -Name 'test_user' | Select-Object Name, SID
同様に、ローカルコンピュータのグループのSIDを取得できます。
Get-LocalGroup -Name tstGroup1 | Select-Object Name, SID
.NETクラスSystem.Security.Principal.SecurityIdentifierを使用することもできます およびSystem.Security.Principal.NTAccount PowerShellを介してユーザーのSIDを取得するには:
$objUser = New-Object System.Security.Principal.NTAccount("LOCAL_USER_NAME")
$strSID = $objUser.Translate([System.Security.Principal.SecurityIdentifier])
$strSID.Value
ActiveDirectoryでユーザー/グループSIDを取得する方法
次のコマンドを使用して、現在のドメインアカウントのSIDを取得できます。
whoami /user
WMIC
を使用して、ActiveDirectoryドメインユーザーのSIDを見つけることができます。 道具。次のコマンドでドメイン名を指定する必要があります:
wmic useraccount where (name='jjsmith' and domain=′corp.woshub.com′) get sid
ADドメインユーザーのSIDを見つけるには、WindowsPowerShell用のActiveDirectoryモジュールの一部であるGet-ADUserコマンドレットを使用できます。 jabramsのSIDを取得しましょう ドメインユーザーアカウント:
Get-ADUser -Identity 'jabrams' | select SID
Get-ADGroupコマンドレットを使用してADグループのSIDを取得できます:
Get-ADGroup -Filter {Name -like "fr-sales-*"} | Select SID
PowerShell ADモジュールがコンピューターにインストールされていない場合は、前述の.Netクラスを使用してADドメインからユーザーのSIDを取得できます。
$objUser = New-Object System.Security.Principal.NTAccount("corp.woshub.com","jabrams")
$strSID = $objUser.Translate([System.Security.Principal.SecurityIdentifier])
$strSID.Value
同じPowerShellワンライナーコマンド:
(new-object security.principal.ntaccount “jabrams").translate([security.principal.securityidentifier])
WindowsコンピューターがActiveDirectoryドメインに参加している場合、2つの異なるSIDがあります。最初のSIDはローカルコンピューター識別子(マシンSID)であり、2番目はAD内の一意のコンピューターオブジェクト識別子です。
次のコマンドを使用して、ActiveDirectoryドメイン内のコンピューターのSIDを取得できます。
Get-ADComputer mun-rds1 -properties sid|select name,sid
ローカルコンピュータのSID(マシンSID)は、 PsGetを使用して取得できます。 SID ツール(https://docs.microsoft.com/en-us/sysinternals/downloads/psgetsid)。ただし、ツールをダウンロードして各コンピューターに手動でインストールする必要があります。
.\PsGetsid64.exe
または、ローカルユーザーのSIDから最後の4文字(RID)を削除するだけです:
$user=(Get-LocalUser Administrator).sid
$user -replace ".{4}$"
ドメイン内の各コンピューターが一意のローカル(マシン)SIDを持っていることが重要です。コンピューターまたは仮想マシンのクローンを作成する場合、またはテンプレートからそれらを作成する場合は、
sysprep
を実行する必要があります。 ドメインに参加する前のユーティリティ。このツールは、ローカルマシンSIDをリセットします。これにより、一般的な信頼関係のエラーから解放されます。 SIDをユーザー名またはグループ名に変換する方法
SIDでユーザーアカウントの名前を確認するには(逆の手順)、次のいずれかのコマンドを使用できます。
wmic useraccount where sid='S-1-3-12-12451234567-1234567890-1234567-1434' get name
RSAT-AD-PowerShellモジュールを使用してSIDでドメインユーザーの名前を取得できます:
Get-ADUser -Identity S-1-3-12-12451234567-1234567890-1234567-1434
既知のSIDでドメイングループ名を検索するには、次のコマンドを使用します。
Get-ADGroup -Identity S-1-5-21-247647651-3965464288-2949987117-23145222
組み込みのPowerShellクラスを使用して(追加のモジュールを使用せずに)SIDでグループ名またはユーザー名を確認することもできます。
$objSID = New-Object System.Security.Principal.SecurityIdentifier ("S S-1-3-12-12451234567-1234567890-1234567-1434")
$objUser = $objSID.Translate( [System.Security.Principal.NTAccount])
$objUser.Value
PowerShellを使用してSIDでActiveDirectoryを検索する
特定のSIDが属するADオブジェクトの種類と、それを見つけるために使用する必要のある正確なPowerShellコマンドレット(Get-AdUser、Get-ADComputer、またはGet-ADGroup)がわからない場合は、次のユニバーサルメソッドを使用できます。 Get-ADObjectを使用してSIDでActiveDirectoryドメイン内のオブジェクトを検索する コマンドレット。
$sid = ‘S-1-5-21-2412346651-123456789-123456789-12345678’
Get-ADObject –IncludeDeletedObjects -Filter "objectSid -eq '$sid'" | Select-Object name, objectClass
IncludeDeletedObjects
パラメータを使用すると、ActiveDirectoryのごみ箱で削除されたオブジェクトを検索できます。
この場合、指定されたSIDを持つADオブジェクトはドメインコンピューターです(objectClass属性を参照してください)。
-
WhatsAppグループを作成および管理する方法
7億人以上の人々が、メッセージング、インターネット、ビデオ通話に毎日WhatsAppを使用しています。あなたもその一人である可能性があります。おそらく、あなたは1つまたは2つのWhatsAppグループにも属しています。 WhatsAppグループを作成および管理するための便利なヒントを次に示します。 WhatsAppグループを作成するために必要なもの WhatsAppグループを作成するには、Android、iPhone、Mac、またはWindowsデバイスにWhatsAppをインストールする必要があります。 また、グループアイコン、グループ名、グループを作成する目的、参加者を追加する権限、お
-
Office365 で共有メールボックスをユーザー メールボックスに、またはユーザー メールボックスを共有メールボックスに変換する方法。
このチュートリアルでは、Office365 でユーザー メールボックス (別名「通常のメールボックス」) を共有メールボックスに、または共有メールボックスをユーザー メールボックスに変換する方法を学習します。 Office 365 の最も便利な機能の 1 つは、共有メールボックスを作成する機能です。共有メールボックスは多くのユーザーからアクセスでき、ユーザー メールボックスとは異なり、ライセンスは必要ありません。 Microsoft 365 (以前は Office365 と呼ばれていました) には、通常のメールボックスを共有メールボックスに変換するオプション、または共有メールボックスを通常