gpt4 book ai didi

security - 通过 powershell for office 365 查看用户密码是什么

转载 作者:行者123 更新时间:2023-12-02 23:27:08 24 4
gpt4 key购买 nike

这个问题与我所学过的每一个最佳实践都背道而驰,但对于我目前的组织来说,这是一个更大的问题。关键是,我需要查看当前用户密码是什么,而不仅仅是重置它。这有几个原因。

我的组织有一个事件目录,但它仅用于远程终端服务。有适当的软件不与任何东西同步,我们在这些不同的程序/数据库中手动创建用户帐户,并且只需手动将其凭据设置为他们用于登录 Office 365 帐户的相同凭据。在线交流是我们业务的核心,而不是事件目录。

因此,密码设置为永不过期,并保存所有用户及其密码的主列表。所有这一切对最终用户来说都是透明的,就他们而言,他们在所有事情上只有一个帐户,因为他们的登录名对所有事情都是相同的,但那是因为我们手动将他们的凭据设置为相同。现在,当用户忘记密码时(尤其是我们的手机用户,因为他们收到的手机/平板电脑已经登录并且很少知道他们的密码),我们会查阅主列表。然而,在这种情况下,无论出于何种原因,用户都不在主列表中。

这可能已经持续了几个月,但只是在我不得不用新平板电脑设置它们时才注意到。用户不知道他们的密码,没有主列表我看不到它是什么。我看到的唯一可用的其他选项是重置用户交换密码(我将在下面解释我遵循的过程)并让用户每次无法登录时给我打电话,转到它,然后重置他的密码或(在某些情况下)为他创建一个新帐户(这根本不理想,因为他会丢失他多年来建立的所有链接数据)并重新开始。

我很清楚这些做法有多糟糕,并且一直在努力改变它们,但那是另一回事。

现在,我目前重置用户密码的方式(因为 office365 webapp 不允许手动设置密码)是在我的 IT 笔记本电脑上运行 powershell,使用 exchange、azure admin 和 azure sign in assistant 插件,然后输入以下命令:

$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -credential $UserCredential -Authentication Basic –AllowRedirection

使用我的域管理员帐户登录
import-pssession $session


connect-msolservice

这让我进入在线交换 powershell session ,我可以在其中运行密码重置命令
Set-MsolUserPassword –UserPrincipalName TYPE_USERNAME_HERE –NewPassword TYPE_DESIRED_PASSWORD_HERE -ForceChangePassword $False

但是我需要查看当前的密码是什么。在我的搜索中,我发现了许多资源,这些资源解释了如何获取有关上次设置密码的时间、是否设置为永不过期等信息。然而,关于如何检索用户当前密码的实际答案(并以可读格式显示,因为它可能会被加密)。但是,我发现这篇文章使我相信这是可能的:
Powershell Scripting example link

所以我基本上需要知道运行哪些 powershell 命令来检索和解码用户当前密码。我是我的组织 I.T.管理员并拥有完整的管理员权限。此外,这是我的第一个堆栈交换帖子,所以如果您需要任何其他信息,请告诉我。我很感激帮助。

最佳答案

简短的回答:这是不可能的。

密码不直接存储在 Active Directory 中,它们是经过哈希处理的,并且存储的是该哈希值。当您输入您的详细信息时,系统会对您输入的密码进行哈希处理,并将其与存储的密码进行比较。用于制作该哈希的算法只是一种方法,因此,返回密码的唯一方法是暴力破解它。

长答案:如果您更改更改密码存储方式的 AD 设置(即可逆加密),则可能是可能的,但这样做会非常疯狂。

关于security - 通过 powershell for office 365 查看用户密码是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31953892/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com