我使用的是最新版本的 Microsoft Edge(版本 81.0.416.68(官方版本)(64 位))。当我尝试登录特定站点(而不是所有站点)时,会弹出“Windows 安全”对话框,然后是“登录以访问此站点”,询问用户名和密码。使用 Chrom 我只是收到“登录”对话框,询问用户名和密码。
所以我的问题是,为什么 Microsoft Edge 有“Windows 安全”对话框,即使它没有像另一个对话框一样预先填写任何保存的用户名和密码,这也很烦人?
如何禁用此功能,获得一个带有预填充保存的用户名和密码的正常“登录”对话框,或者我需要在“Windows 安全”对话框中为预填充保存的用户名和密码进行一些设置?
这是关于无法冒充当前登录的Windows用户的上一篇文章的后续内容.有很多好的建议,但之前的主题变得混乱,所以我正在重置这篇文章.希望在下面记录的当前状态下,问题显而易见.这是一条很好的路径,所以我不得不相信我所缺少的是一个小配置步骤.
问题:我需要让ASP.NET模拟当前登录的用户.当我在IIS 7.5下运行时,它不起作用.IIS Express工作正常,但我认为这是因为调试会话在我的用户ID下运行.
我Environment.Username用来确定这个用户是谁.有人建议此属性始终返回登录的用户名,但在我的测试中,它会从IIS返回模拟用户.
例如,如果我的web.config有......
<identity impersonate="true" />
Run Code Online (Sandbox Code Playgroud)
当我使用该设置在IIS 7.5下运行时,Environment.Username返回IUSR.我相信这是IIS匿名用户帐户.
如果我将web.config更改为...
<identity impersonate="true" userName="domain\jlivermore" password="mypassword" />
Run Code Online (Sandbox Code Playgroud)
...然后Environment.Username返回jlivemore.但是,如果没有我在web.config中明确设置它,我需要它返回jlivermore.
这是我的IIS设置......
.NET授权规则

认证

一个问题,如果我禁用匿名身份验证,那么系统会提示我登录该站点.我想如果您使用域上的Active Directory帐户登录,那么此挑战不会出现?即使我在此提示中输入我的用户名/密码,我仍然无法进行模拟.

基本设置

asp.net impersonation windows-security asp.net-mvc-3 asp.net-mvc-2
我正在尝试使用LsaLogonUser创建交互式登录会话,但它始终返回STATUS_INVALID_INFO_CLASS(0xc0000003).从我在网上搜索中发现,KERB_INTERACTIVE_LOGON结构的内存布局很棘手,但我很确定我已经做到了.
我也尝试使用MSV1.0而不是Kerberos,MSV1_0_INTERACTIVE_LOGON用于身份验证结构和MSV1_0_PACKAGE_NAME包名称,但是失败了STATUS_BAD_VALIDATION_CLASS(0xc00000a7).
谁能告诉我这里做错了什么?这是代码,大部分错误处理都被剥离了.显然,这不是生产质量; 我只想尝试一个工作样本.
// see below for definitions of these
size_t wcsByteLen( const wchar_t* str );
void InitUnicodeString( UNICODE_STRING& str, const wchar_t* value, BYTE* buffer, size_t& offset );
int main( int argc, char * argv[] )
{
// connect to the LSA
HANDLE lsa;
LsaConnectUntrusted( &lsa );
const wchar_t* domain = L"mydomain";
const wchar_t* user = L"someuser";
const wchar_t* password = L"scaryplaintextpassword";
// prepare the authentication info
ULONG authInfoSize …Run Code Online (Sandbox Code Playgroud) 我正在尝试从提升的进程创建中或低完整性进程。我知道还有其他类似的问题,但它们主要关注使用资源管理器或任务计划程序等解决方法,我想坚持使用CreateRestrictedToken()+ CreateProcessAsUser()。
我认为一定可以以某种方式执行此操作,因为我相信 UAC 在您登录时会执行此操作,但我无法使令牌中的所有内容看起来像正常的 UAC Medium IL 令牌。
通过创建令牌CreateRestrictedToken(hThisProcessToken, LUA_TOKEN, ...),然后设置TokenOwner,TokenDefaultDacl然后TokenIntegrityLevel调用 之前,您可以获得 80% 的收益CreateProcessAsUser()。
剩下的问题是TokenVirtualizationAllowed、TokenVirtualizationEnabled、TokenElevation、TokenElevationType和TokenMandatoryPolicy其中SetTokenInformation()失败并出现 ERROR_PRIVILEGE_NOT_HELD 或 ERROR_INVALID_PARAMETER。
如果我以 SYSTEM @ SECURITY_MANDATORY_SYSTEM_RID 身份运行并启用所有权限,而不是以管理员 @ SECURITY_MANDATORY_HIGH_RID 身份运行,那么我可以进行设置TokenMandatoryPolicy,TokenVirtualization*但设置TokenElevation*仍然失败!(目前仅在 Windows 8 上进行了测试)
TokenElevation*令牌中没有正确的值是一个大问题,因为 Internet Explorer 无法在保护模式下启动,因为它认为令牌已提升。
的文档没有SetTokenInformation()说明TOKEN_INFORMATION_CLASS可以设置哪些项目以及需要哪些权限(如果有),我不明白为什么不允许您将这些设置为与实际完整性级别()匹配的较低安全TokenIntegrityLevel值令牌。
使用Safer API创建SAFER_LEVELID_NORMALUSER令牌并不能解决任何这些问题,而且还会创建比普通 …
我使用的是 Alfresco-5.1、MS-Office 2013 和 Windows-7。我已经在我的系统中完成了 Alfresco 设置并上传了一些文件。要编辑文档,我想使用“在 Microsoft Office 中编辑”功能,但是当我点击它时,我得到了如下所示的 Windows 安全弹出窗口屏幕,它再次要求输入用户名和密码。我想删除这个弹出窗口。我怎样才能删除它?

alfresco ms-office windows-security windows-7 alfresco-share
我安装了IntelliJ IDEA 2016.3社区版,我创建了一个简单的Java类,其中包含一个main只打印消息的方法.当我运行该"程序"时,会出现以下窗口:
Windows防火墙已阻止此程序的某些功能
Window Firewall已在所有公共和专用网络上阻止了IntelliJ IDEA的某些功能.
如果我去文件 > 设置... > Appeareance与行为 > 系统设置 > 使用情况统计 > 允许将使用统计资料,以JetBrains的SRO是选中.
如果我去C:\Users\myusername\.IdeaIC2016.3\system\log:
build-log\build.log - 似乎没什么可疑的idea.log - 唯一有趣的线是:
在第一次运行时,当出现Windows安全警报窗口时,有5个块看起来像这样(不相同):
2016-12-01 09:42:53,814 [ 662361] INFO - il.indexing.FileBasedIndexImpl - Rebuild requested for index org.jetbrains.kotlin.idea.versions.KotlinMetadataVersionIndex
java.lang.Throwable
at com.intellij.util.indexing.FileBasedIndex.requestRebuild(FileBasedIndex.java:72)
at org.jetbrains.kotlin.idea.versions.KotlinUpdatePluginComponent.initComponent(KotlinUpdatePluginComponent.kt:62)
at com.intellij.openapi.components.impl.ComponentManagerImpl$ComponentConfigComponentAdapter.getComponentInstance(ComponentManagerImpl.java:501)
at com.intellij.openapi.components.impl.ComponentManagerImpl.createComponents(ComponentManagerImpl.java:125)
at com.intellij.openapi.application.impl.ApplicationImpl.lambda$createComponents$8(ApplicationImpl.java:441)
at com.intellij.openapi.progress.impl.CoreProgressManager$3.run(CoreProgressManager.java:179)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:568)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:519)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:54)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:164)
at com.intellij.openapi.application.impl.ApplicationImpl.createComponents(ApplicationImpl.java:448)
at com.intellij.openapi.components.impl.ComponentManagerImpl.init(ComponentManagerImpl.java:109)
at com.intellij.openapi.application.impl.ApplicationImpl.load(ApplicationImpl.java:400)
at com.intellij.openapi.application.impl.ApplicationImpl.load(ApplicationImpl.java:386)
at com.intellij.idea.IdeaApplication.run(IdeaApplication.java:190) …Run Code Online (Sandbox Code Playgroud)security windows-firewall intellij-idea windows-security intellij-idea-2016
我有两个数据库。两者都在同一个文件夹中。据我所知,两者拥有完全相同的所有权和权限。我可以附加一个,但不能附加另一个 - 我收到错误 5123。
对于这两个文件...
权限条目:
MSSQLSERVER - 完全控制
所有者权利 - 完全控制
管理员 - 完全控制
我查看了下面引用的其他问题,但鉴于上面列出的限制,无法得到任何可行的建议。我在下面发布了最终有效的内容。
我在 WPF 应用程序中使用 Windows 10 API“Passport”和“Window Hello”。
bool keyCredentialAvailable = await KeyCredentialManager.IsSupportedAsync();
if (keyCredentialAvailable)
{
KeyCredentialRetrievalResult keyCreationResult = await KeyCredentialManager.RequestCreateAsync("Hi", KeyCredentialCreationOption.ReplaceExisting);
}
Run Code Online (Sandbox Code Playgroud)
RequestCreateAsync方法打开弹出窗口,要求输入生物识别信息或密码。这在主窗口后面的屏幕截图中可见。
我没有任何关于这个弹出窗口的参考,我可以把它放在前面。另外,我在 MainWindow 的方法上调用此方法Loaded,以便可以确认主窗口已完全加载。
我们正在编写一个仅运行的远程桌面应用程序,它使用 SendInput 进行键盘(和鼠标)交互。但是它无法与 UAC 提示交互。
我们的应用程序为此需要什么权限/权利?
背景信息:该应用程序是由复制 winlogon.exe 的访问令牌的另一个进程生成的。这使得可以在具有系统完整性级别的 SYSTEM 帐户下运行,附加到物理控制台会话,并具有与 winlogon.exe 相同的 SE 权限(https://learn.microsoft.com/en-us/windows/desktop/secauthz/特权常量),尽管并非所有这些都已启用。
struct MY_TOKEN_PRIVILEGES {
DWORD PrivilegeCount;
LUID_AND_ATTRIBUTES Privileges[2];
};
int RunUnderWinLogon(LPCWSTR executableWithSendInput)
{
DWORD physicalConsoleSessionId = WTSGetActiveConsoleSessionId();
auto winlogonPid = GetWinLogonPid(); // external function
if (!winlogonPid)
{
std::cout << "ERROR getting winlogon pid" << std::endl;
return 0;
}
HANDLE hWinlogonToken, hProcess;
hProcess = OpenProcess(MAXIMUM_ALLOWED, FALSE, winlogonPid);
if (!::OpenProcessToken(hProcess, TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY
| TOKEN_DUPLICATE | TOKEN_ASSIGN_PRIMARY | TOKEN_ADJUST_SESSIONID
| TOKEN_READ | TOKEN_WRITE, &hWinlogonToken))
{ …Run Code Online (Sandbox Code Playgroud) windows-security ×10
winapi ×3
windows ×3
c# ×2
security ×2
uac ×2
alfresco ×1
asp.net ×1
ms-office ×1
sendinput ×1
sql-server ×1
uipi ×1
windows-10 ×1
windows-7 ×1
wpf ×1