任意のユーザーがマシン上の管理者であるかどうかを検出するにはどうすればよいですか?私はユーザーのドメインとユーザー名を持っていますが、パスワードは持っていません。ユーザーは現在ログインしているユーザーではないため、WindowsIdentity.GetCurrentだけを使用することはできません。ユーザーがグループに属しているかどうかを検出する
0
A
答えて
1
LDAPを使用します。例hereを参照してください。
0
System.DirectoryServicesを使用して、ローカルマシンを最初にロードしてから、特定のグループ内のユーザーを検索できます。次のコードを試してみてください:
DirectoryEntry localMachine = new DirectoryEntry("WinNT://" + Environment.MachineName);
DirectoryEntry admGroup = localMachine.Children.Find("administrators","group");
object members = admGroup.Invoke("members", null);
、オブジェクトのメンバーに各メンバーのための新しいDirectoryEntryをを作成します。
foreach (object groupMember in (IEnumerable)members)
{
DirectoryEntry member = new DirectoryEntry(groupMember);
//Do what you want
}
そのforeachループの内側部材のオブジェクトは、ユーザーに関するデータの負荷を持っていますその中。ループ内の現在の1を使用してメンバーの名前を比較します
if (memberSearch.name == member.name) {
return true;
} else {
return false;
}
あなたはまた、部材を介して検索することができ、ユーザーになどを見つけるために、オブジェクトにそれを行う方法の多くがあります。お役に立てれば!
2
UserPrincipal.GetAuthorizationGroupsを使用して、ユーザーがマシンへの管理アクセスを許可されているグループにいるかどうかを確認します。
まず、FindByIdentityを使用してUserPrincipalオブジェクトを取得します。次に、ユーザーが所属する権限グループを取得します。各グループをチェックして、組み込み管理者グループと一致するかどうかを確認します。組み込み管理者グループがユーザーの権限グループに属していない場合、ユーザーはローカル・マシンの管理者ではありません。
using System.DirectoryServices.AccountManagement;
using System.Linq;
var name = Environment.UserName;
var user = UserPrincipal.FindByIdentity(new PrincipalContext(ContextType.Domain), name);
var groups = user.GetAuthorizationGroups();
var isAdmin = groups.Any(g => g.Name == "Administrators");
Console.WriteLine("Admin: " + isAdmin);
関連する問題
- 1. ユーザーがグループに所属しているかどうかのアクティブディレクトリチェック
- 2. ユーザーがOutlook Web Accessにログインしているかどうかを検出する
- 3. ユーザーが入力しているかどうかを検出する
- 4. ユーザーがランチャーにいるかどうかを検出
- 5. アクティブなディレクトリオブジェクトを検出する正しい方法は、ユーザーまたはグループに属していますか?
- 6. ユーザがsudoグループに属しているかどうかを確認するスクリプト
- 7. Select2 Searchユーザーが入力しているかどうかを検出します
- 8. ユーザーがファイルをダウンロードしたかどうかを検出する
- 9. Sharepoint:現在のユーザーが指定されたグループに属しているかどうかを調べる
- 10. div内でユーザーがスクロールしているかどうかを検出
- 11. ユーザーがウェブブラウザでサーフィンしているときに、マウスカーソルが現在どのホバーリンクを検出しているかをどのように検出できますか?
- 12. ユーザーがプロキシの背後にいるかどうかを検出する
- 13. ユーザーがSmarty PHPのサブドメインから来ているかどうかを検出
- 14. ユーザーに印刷機能があるかどうかを検出しますか?
- 15. ユーザーが承認を出しているかどうかをチェック
- 16. ユーザーがウェブページからiOSコンテンツブロッキングを有効にしているかどうかを検出します
- 17. iOS:GPSがないと、ユーザーが車両を運転しているかどうかを検出できますか?
- 18. ユーザーがUITextFieldに入力したかどうかを検出する
- 19. ユーザーが「戻る」ボタンをクリックしたかどうかを検出する - モバイルブラウザ
- 20. ユーザーがスペースバーに入ったかどうかを検出するにはどうすればよいですか?
- 21. socket.io/node.jsサーバーがダウンしているかどうかを検出
- 22. UIComponentがスクロールバーをアクティブにしているかどうかを検出する
- 23. ユーザーが他のアプリから音楽を再生しているかどうかを検出する
- 24. ユーザーがグループに所属している場合
- 25. ユーザーが地域に入るかどうかを検出する - ジオコーディング
- 26. ユーザーに自分のChrome拡張機能がインストールされているかどうかを検出しますか?
- 27. ユーザーが使用しているiOSデバイスを検出するにはどうすればよいですか?
- 28. Googleでログイン - ユーザーがトリガーしたかどうかを検出
- 29. フラグメントがユーザーに表示されているかどうかを検出する方法はありますか?
- 30. C#:スクリーンリーダーが動作しているかどうかを検出するには?
完璧、ありがとう。 –