问题标签 [mmc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
213 浏览

c# - 如何使用 MMC 自动化对象模型获取 MMC 管理单元节点的 html dom 对象

我正在为现有的 mmc 文件使用自动化对象模型,并且只是试图遍历它的所有节点,我能够这样做。

我的查询是:如何获取特定节点的 html dom 对象的访问权限。节点的结果窗格中存在一个 html 页面,我想访问它,以便我可以在该表单上执行一些自动化操作。

下面是我用于 MMC 自动化对象模型的链接。 http://msdn.microsoft.com/en-us/library/aa815049(v=vs.85).aspx

我发现如果OCX控件在任何节点的结果视图中,那么“视图对象->控件对象属性”返回结果视图中控件提供的自动化接口。

但是,如果结果视图是 HTML 视图,那么如何获取该结果视图的自动化界面。

0 投票
2 回答
705 浏览

windows - 限制 windows server 2008 R2 远程 mmc

我正在寻找一种方法如何以最少的管理工作禁用对单个 Windows Server 2008 R2 管理控制台的远程访问。

服务器在域中,并且域中有大量其他计算机和用户,因此寻找一些本地选项而不是更改域级别的某些设置。

我可以在服务器 A 上禁用远程服务器管理的使用,它可以按我的意愿工作 - 我无法从服务器 B 访问其服务器管理。但是,如果我将在服务器 B 上打开 mmc 并添加例如“服务”或“计算机管理”管理单元,我可以通过这种方式远程访问服务器 A

需要避免用户限制使用 mmc 和特定的管理单元,最好尝试找到一种不使用 windows 防火墙并阻止此类通信的方法。我内心深处确实相信,可能有一些注册表项或本地策略设置会简单地禁用 mmc 类的远程访问。

显然必须避免任何进一步的第 3 方工具......

任何人都知道如何实现这一目标?或者至少一些提示将不胜感激。

谢谢

0 投票
20 回答
81789 浏览

c# - 尝试加载证书的私钥时出现“指定的提供程序类型无效”CryptographicException

我正在尝试读取第三方服务提供商与我共享的证书的私钥,因此我可以使用它来加密一些 XML,然后再通过网络将其发送给他们。我在 C# 中以编程方式这样做,但我认为这是一个权限或配置错误的问题,所以我将专注于似乎最相关的事实:

  • 我认为这个问题与代码无关;我的代码可以在其他计算机上运行,​​并且该问题会影响 Microsoft 的示例代码。
  • 该证书以 PFX 文件的形式提供,仅用于测试目的,因此它还包括一个虚拟证书颁发机构。
  • 使用 MMC.exe,我可以将证书导入本地计算机的个人存储中,然后将私钥的权限授予所有相关帐户,并将证书颁发机构拖放到受信任的根证书颁发机构中。
  • 使用 C#,我可以加载证书(由其指纹识别)并使用X509Certificate2.HasPrivateKey. 但是,尝试读取密钥会导致错误。在 .NETCryptographicException中,在尝试访问属性时会抛出消息“指定的提供程序类型无效” X509Certificate2.PrivateKey。在 Win32 中,调用该方法CryptAcquireCertificatePrivateKey会返回等效的 HRESULT NTE_BAD_PROV_TYPE,.
  • 这与使用 Microsoft 自己的两个代码示例读取证书的私钥时也会发生的异常相同。
  • 在当前用户的等效存储中(而不是本地计算机)安装相同的证书,可以成功加载私钥。
  • 我在具有本地管理员权限的 Windows 8.1 上,我尝试在正常模式和提升模式下运行我的代码。Windows 7 和 Windows 8 上的同事已经能够从本地机器存储中加载相同证书的密钥。
  • 我可以成功读取位于同一存储位置的自签名 IIS 测试证书的私钥。
  • 我已经针对 .NET 4.5(一些旧版本的框架报告了这个错误)。
  • 我不认为这是证书模板的问题,因为我希望这会同时影响本地计算机和当前用户存储?

与我的同事不同,我之前曾多次尝试以各种方式卸载和重新安装证书,包括通过 IIS 管理器,还包括来自同一颁发者的旧证书。我在 MMC 中看不到任何旧证书或重复证书的痕迹。但是,我确实有许多大小相同的私钥文件,根据最后一次写入时间,在我进行各种安装尝试后,这些文件肯定被遗忘了。这些位于以下位置,分别用于本地计算机和当前用户存储:

c:\ProgramData\Microsoft\Crypto\RSA\MachineKeys

c:\Users\\AppData\Roaming\Microsoft\Crypto\RSA\S-1-5-21-[其余用户 ID]

那么,任何人都可以请告知是否:

  • 最好使用 MMC 卸载证书,删除所有看起来像孤立私钥的文件,然后重新安装证书并重试?
  • 还有其他我应该尝试手动删除的文件吗?
  • 还有什么我应该尝试的吗?

更新 - 添加了显示尝试读取私钥的代码示例:

0 投票
1 回答
195 浏览

permissions - 空白、损坏的​​清单文件 Windows Server 2008

我有一个 Windows Server 2008 实例的问题,其中服务器管理器不会打开,powershell 或其他任何东西也不会打开。我研究了解决方案并尝试了十几个修复程序,包括用 .NET/Framework/etcetc 中的已知产品替换 machine.config、运行系统更新准备修复损坏的文件、DISM 等。我相信问题源于特定的清单文件。远程事件日志查看显示了数十个 SideBySide 错误,这些错误指向声明无效 XML 的清单文件,仔细检查后,它看起来就像是直接的空白。我有一份来自已知良好服务器配置的相同清单的副本,所以我正在考虑替换它。

首先:这是一个愚蠢的想法吗?有什么我不知道的东西会在我脸上炸开吗?

第二:我似乎无法替换清单文件。权限对我不利。经过仔细检查,似乎 TrustedInstaller 是唯一对该文件夹具有写访问权限及以上权限的帐户,即使我以具有提升访问权限的管理员身份运行,这些权限也被我锁定。我猜这是为了防止我在脚上开枪,但我需要这样做。所以第二个问题:如何提升我的权限以访问 C:\Windows\WinSxs\ 中的清单文件夹?

感谢您花时间阅读本文。我非常感谢您的集体知识和帮助。

0 投票
1 回答
2750 浏览

ssl - 为什么我们需要在 Windows 中安装 .pfx 证书(而不是 .cer)才能使用客户端证书拨打电话?

我编写了一个小型控制台应用程序来使用客户端证书对服务器进行 HTTP 调用。我编写的代码从指定位置读取 .cer 文件以发出请求:

但是,除非您将证书安装在证书管理器中当前用户的个人文件夹中,否则此代码不起作用。更具体地说,它仅在我安装了.pfx证书时才有效,而不是.cer

据我了解,客户端证书仅用于身份验证而不用于加密,对吗?所以,

  1. 为什么我们需要安装证书?为什么我的程序不能从该位置选择 .cer 文件并将其与请求一起发送?和,

  2. 同样,更具体地说,为什么我们需要安装.pfx证书?为什么.cer不做这项工作?

0 投票
0 回答
635 浏览

windows - msc 二进制文件格式

我管理了很多环境,可能有很多机器——我正在寻找一个按钮来创建和打开一个环境的 MSC 文件——也就是说,为服务和计算机管理添加一个管理单元, 对于环境中的每台服务器。

创建 xml 完全没有问题 - 然而,对于服务管理单元,服务器的名称隐藏在魔法文本编码的二进制 blob 中的某处。鉴于我知道服务器名称,有人知道我如何创建二进制数据吗?

0 投票
3 回答
18061 浏览

sql - MMC 无法创建管理单元 SQL Server 配置管理器

当我尝试在 sql server 2008 中连接到 sql server 配置管理器时。它显示错误 MMC 无法创建管理单元。 错误图像

直到昨晚它都工作得很好。可能是什么原因,我该如何解决。但在后台 sql server 运行完美。

0 投票
1 回答
2297 浏览

c# - 调试器未附加到进程

我有一个正在尝试调试的 MMC 管理单元。目前,位于管理单元的构造函数中的以下代码用于将调试器附加到它:

但是总是必须将调试器附加到 Visual Studio 真的很烦人。我想自动化这个过程。理想情况下,我只需要按 F5,它就会自动附加调试器。我尝试了以下方法:

  • 项目属性 -> 启动外部程序 -> 输入“C:\Windows\System32\mmc.exe”
  • 项目属性 -> 命令行参数 -> 给它一个 .msc 文件的路径(存储管理单元布局,这样每次都可以更轻松地加载它,这样你就不必总是文件 -> 添加/删除管理单元)。

这没有用。调试器不会自动附加。我怎样才能自动化这个过程,或者是什么阻止了调试器自动附加?

0 投票
1 回答
1511 浏览

c# - 为什么复制/粘贴证书指纹字符串时相等性检查失败?

我有两个从 Microsoft 管理控制台检索到的证书指纹。

当我将值复制/粘贴到我的程序中,然后手动键入相同的值以执行相等检查时,它们会失败。

有谁知道为什么,在粘贴字符串值时,它没有通过相等性检查,但是当手动输入它时呢?据我所知,它们是相同的值,所以不应该都是真的吗?

这是 Visual Studio 中比较结果的图像:

在此处输入图像描述

0 投票
1 回答
165 浏览

c++ - 在 MMC 管理单元中嵌入 MFC 对话框

我在 MFC 中创建了一些从 MMC 管理单元生成的对话框。经过审查,我被告知最好将对话框嵌入到 SnapIn 中(在结果窗格中作为自定义视图)。

问题是我不知道如何做到这一点:我猜我必须创建一个 COM 接口,作为当用户与 MMC 交互时 MMC 生成的 COM 事件的接收器,并且我必须将这些事件转换为对话框期望的 Windows 消息。

我不知道这是否正确,有人能指出我正确的方向吗?