首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何通过AD DirectoryEntry在VB.NET中设置AccountExpires

在VB.NET中,您可以使用System.DirectoryServices命名空间中的DirectoryEntryDirectorySearcher类来设置AD用户的AccountExpires属性。以下是一个示例代码:

代码语言:vbnet
复制
Imports System.DirectoryServices

Module Module1

    Sub Main()
        ' 设置AD域名和用户名
        Dim domainName As String = "yourdomain.com"
        Dim userName As String = "username"

        ' 设置AD用户的AccountExpires属性
        SetAccountExpires(domainName, userName)
    End Sub

    Sub SetAccountExpires(ByVal domainName As String, ByVal userName As String)
        ' 设置AD用户的AccountExpires属性
        Try
            ' 创建DirectoryEntry对象
            Dim de As New DirectoryEntry("LDAP://" & domainName)

            ' 创建DirectorySearcher对象
            Dim ds As New DirectorySearcher(de)

            ' 设置DirectorySearcher的搜索条件
            ds.Filter = "(&(objectCategory=person)(objectClass=user)(sAMAccountName=" & userName & "))"

            ' 搜索AD用户
            Dim result As SearchResult = ds.FindOne()

            ' 如果找到了AD用户
            If result IsNot Nothing Then
                ' 获取AD用户的DirectoryEntry对象
                Dim userEntry As DirectoryEntry = result.GetDirectoryEntry()

                ' 设置AccountExpires属性
                userEntry.Properties("AccountExpirationDate").Value = 0

                ' 保存更改
                userEntry.CommitChanges()

                ' 关闭DirectoryEntry对象
                userEntry.Close()

                Console.WriteLine("AccountExpires属性已成功设置为永不过期。")
            Else
                Console.WriteLine("找不到指定的AD用户。")
            End If
        Catch ex As Exception
            Console.WriteLine("发生异常:" & ex.Message)
        End Try
    End Sub

End Module

在这个示例中,我们首先设置了AD域名和用户名,然后使用DirectoryEntryDirectorySearcher类搜索AD用户。如果找到了AD用户,我们将使用AccountExpirationDate属性将其设置为永不过期。最后,我们将保存更改并关闭DirectoryEntry对象。

请注意,您需要在运行此代码之前安装.NET Framework 3.5或更高版本,并且您需要具有足够的权限来修改AD用户的AccountExpires属性。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Ubuntu如何通过Snap安装MakeMKV

MakeMKV,可以用蓝光光碟和DVD制作MKV,现在可以通过Ubuntu 18.04及更高版本的Snap软件包轻松安装。   Snap是大多数Linux桌面上运行的容器化软件包。...因此,可以通过Snappy Store或在终端运行单个命令轻松地安装它。  ...Ubuntu安装MakeMKV snap:   1、)不知道为什么,但是Ubuntu 18.04的Ubuntu软件找不到makemkv。...但是,可以通过终端运行单个命令来安装它(通过Ctrl + Alt + T打开终端):   snap install makemkv   2、) 还需要一个命令来连接到硬件观察接口:   sudo snap...connect makemkv:hardware-observe   (可选)由于任何原因,您可以通过终端运行命令来轻松删除MakeMKV snap软件包:   snap remove makemkv

62020

Vue.js 通过计算属性动态设置属性值

我们使用到了前面介绍的数据绑定、列表渲染、事件监听和处理、属性和类名绑定等所有基本语法,浏览器预览该页面: 我们可以通过列表下面的输入框和按钮新增框架到列表项: 可以看到,使用 Vue.js 框架的开发效率比传统...不过,现在的列表项看起来有点乱,各种语言的框架随机分布列表项,不便识别,如果我们想要将同一个语言的 Web 框架都聚集在一起,该怎么做?...排序函数 我们可以 addFramework 函数追加一段排序函数对 frameworks 数组按照 language 字段进行升序排序: methods: { addFramework()...计算属性 计算属性从字面意义上理解,就是经过计算后的属性,计算属性可以通过函数来定义,函数体是该属性的计算逻辑,你可以 HTML 视图中像调用普通属性一样调用计算属性,Vue 初次访问该计算属性时...计算属性定义 Vue 实例的 computed 属性,我们将上述排序逻辑通过计算属性 sortedFrameworks 来实现,对应的实现代码如下: methods: { addFramework

12.5K50

WordPress 教程: WordPress 如何设置定时作业

我们知道 Linux 服务器有个 Cron 的功能,可以用来设置定时执行的作业,但是并不是每个人都熟悉 Linux 系统,并且也不是所有的主机管理面板都有 Cron 栏目。...其实 WordPress 本身也有类似于 Cron 的功能,让我们可以直接在 WordPress 定义和执行定时作业,WordPress 把这个功能定义为:WP-Cron,比如 WordPress 本身的文章预发布功能就是基于...WP-Cron 定义了一套完整的 API,让 WordPress 第三方开发者可以通过插件的去定义定时作业。...wpjam_daily_function_hook'); } 上面代码,首先使用函数 wp_next_scheduled 检测 wpjam_daily_function_hook 是否已经被加入到定时作业列表,... WPJAM Basic 定时作业管理后台加入: 这里非常好理解,就不再想讲,只是后通过界面添加的方式,暂时不支持参数,即 $args 参数。

2.2K20

C# AD(Active Directory)域信息同步,组织单位、用户等信息查询

接上篇 Windows Server 2008 R2 配置AD(Active Directory)域控制器 对AD域结合常见需求用C#进行一些读取信息的操作^_^!...和DirectorySeacher 读取AD域信息示例    示例Framework 3.5下用Winform程序编写    主要结合常见需求读取组织单位(OU)及用户(User)信息,以及同步组织单位和用户的层次关系...zh-cn/library/system.directoryservices.directorysearcher.filter(v=vs.80).aspx 用户属性扩充说明(含图文属性对照)    示例只对用户进行了读取了几个属性...下面通过AD域的用户详细信来对照一下相应的属性名 常项选项卡 ? Screenshot (32).png                            地址选项卡 ?...,设置Windows共享时会用到!

3.2K50

c# AD域 权限管理

我现在开始第一步,获取AD域用户所在的组,因为我想把菜单和界面按钮的功能由角色组来控制,用户加入角色组就可以获得相应的权限. 这是我的思路....第一 如何关联AD域 并获取当前登录域的用户所在的角色组 ADUserMessage() 代码如下: using System; using System.Collections.Generic;...Console.WriteLine(“用户名:” + Environment.UserName+Environment.UserDomainName); //Console类 调试的时候使用,输出界面显示...域服务层次结构的节点或对象,使用此类绑定到对象、读取属性和更新特性 DirectoryEntry entry = new DirectoryEntry(); //直接获取当前域用户所在的信息...Directory域服务层次结构执行查询; DirectorySearcher search = new DirectorySearcher(entry); //设置查询的过滤条件

77820

如何通过SnapUbuntu 18.0416.04安装Notepad++

对于那些想要在Ubuntu安装Notepad++文本编辑器的用户,尽管已经有一个名为Notepadqq的Linux替代品,但现在可以使用Wine运行的Notepad++ snap包。...Snap是一种通用的Linux软件包格式,其安装文件几乎包含所有必需的库。 wine是一个兼容性层,能够Linux上运行Windows应用程序。...1.为了方便起见,使用wine运行的最新Notepad ++ 7.5.6已经作为snap软件包生成,因此可以通过Ubuntu软件轻松安装: 或者你可以打开终端(Ctrl + Alt + T)...并通过Linux命令安装snap: snap install notepad-plus-plus 2.安装snap包后,可以通过命令安装一些插件: sudo snap...对于Ubuntu 16.04用户首次安装快照软件包,您可以先通过命令安装snapd守护进程: sudo apt-get install snapd snapd-xdg-open

1.2K20

Ubuntu 如何设置和管理 root 用户权限?

Ubuntu 操作系统,root 用户是具有最高权限的用户,可以执行对系统的所有操作。但是,默认情况下,Ubuntu 禁用了 root 用户,而是使用 sudo 命令来实现管理员权限。...本文将详细介绍 Ubuntu 如何设置和管理 root 用户权限,并讨论一些常见的安全风险和预防措施。什么是 root 用户?root 用户是指 Linux 系统具有最高权限的用户。...如何启用 root 用户 Ubuntu ,默认情况下是禁用 root 用户的。但是,我们可以通过以下两种方式启用 root 用户:1....启用 root 用户如果需要直接使用 root 用户登录系统,可以通过以下命令启用 root 用户:$ sudo passwd root然后输入当前用户密码,并设置 root 用户的密码。...设置成功后,就可以以 root 用户身份登录系统了。如何禁用 root 用户?

4.9K00

看我如何通过Tor OnionWindows执行远程Shell

操作方法 首先,我们要在一个Windows Tor客户端创建一个Tor onion服务(即隐藏服务)。我下载了Tor Expert bundle(同样适用于Tor浏览器)-【下载地址】。....onion地址以及客户端验证cookie可以service目录的文件夹中找到: nybjuivgocveiyeq.onion Wa5kOshPqZF4tFynr4ug1g # client...现在,用nc.exe目标Windows设备上开启服务(我几年前就在电脑上下载了nc.exe,我不记得原始的URL地址了,我使用的版本是v1.11,MD5为ab41b1e2db77cebd9e2779110ee3915d...现在我们的目标主机已经配置好了,另一台设备上,我需要使用包含了认证cookie的配置文件来开启Tor服务: HidServAuth nybjuivgocveiyeq.onion Wa5kOshPqZF4tFynr4ug1g

1.5K50

linuxvim如何显示行数,vim linux下如何设置显示行数「建议收藏」

.vimrc(或/etc/vimrc)文件输入如下文本: set tabstop=4 set softtabstop=4 set shiftwidth=4 set noexpandtab set...nu:表示显示行 vimlinux下如何设置显示行数 .vimrc(或/etc/vimrc)文件输入如下文本: set tabstop=4 set softtabstop=4 set shiftwidth...设置显示行数 左上角-文件-属性 终端-设置最大 … MongoDBLinux下常用优化设置 MongoDBLinux下常用优化设置 以下是一些MongoDB推荐的常用优化设置.在生产环境下选取合适的参数值....程序编译出错时,一般会提示出错的行号,但是用vim打开的代码确不显示行号,错误语句的定位非常不便.那么怎 … Linux下环境变量设置 (转) Linux下环境变量设置 1.Windows 系统下.../WebAPI区别 详细描述它们之间的区别,为什么这么选择,尤其是WCF vs WebAPI 11. SpringBoot 之CRUD实例 SpringBoot静态页路径,可直接通过

6.3K20

WordPress 如何批量添加、设置和删除一组缓存

WordPress 5.5 版本的时候,就引入了wp_cache_get_multiple()函数,实现一次缓存调用就可以批量获取一组缓存。...WordPress 完善缓存批量操作方法 Memcached 也支持一次请求设置多个数据,以及一次请求也可以删除多个缓存数据,所以 WordPress 6.0 版本完善了缓存的批量操作方法,通过实现了下面这三个函数支持完整的缓存的批量的...foo1' => 'value1', 'foo2' => 'value2'], 'group1' ); wp_cache_set_multiple( data, group = '', data: 要设置到缓存的键值对数组...缓存的组名,默认为空字符串 wp_cache_delete_multiple( ['foo1', 'foo2'], 'group1' ); object-cache.php 实现 这三个函数是需要插件开发者 ...新版的 WPJAM Basic 内置的 object-cache.php 很快会实现 wp_cache_set_multiple() 和 wp_cache_delete_multiple() 函数,因为

3.2K20

MacOS技巧|如何通过 macOS 增大光标来找到丢失的光标?

那么如何放大光标呢,本文就给大家详细讲解了如何通过 macOS 增大光标来找到丢失的光标的教程,一起来看看吧! 增加光标大小 如果找不到光标,显而易见的做法是将其放大。...如何在 macOS 更改光标的大小 单击菜单的Apple 标志并选择System Preferences系统偏好设置。 单击辅助功能。 左侧列,选择Display显示器,单击光标。...此操作可能未启用,但可以通过单个复选框轻松启用。 如何在 macOS 启用摇动鼠标以增加光标大小 单击菜单的Apple 标志并选择系统偏好设置。 单击辅助功能。 左侧列,选择Display。...如何更改高分辨率显示器的 macOS 用户界面缩放比例 单击菜单的Apple 标志并选择系统偏好设置。 单击显示。 “显示”选项卡上,单击“缩放”旁边的点。...以上就是如何通过 macOS 增大光标来找到丢失的光标的全部内容。

4K10

如何设置NeoFinder共享网络的目录数据库,NeoFinder使用教程

NeoFinder将其目录数据库文件存储在任何指定的数据库文件夹,因此您只需使用网络服务器托管该文件夹即可在工作组的多个用户之间共享目录。...今天带来的教程就是关于如何设置NeoFinder共享网络的目录数据库。...由于用于Windows的单独工具abeMeda使用与NeoFinder完全相同的数据格式,因此您甚至可以通过这种方式(Apple Macintosh和Microsoft Windows上)跨平台共享数据...只需三个简单的步骤即可设置NeoFinder以供网络使用: 1.服务器卷上创建一个新文件夹。将其命名为“ NeoFinder目录”或类似名称。...2.每台计算机上安装和配置NeoFinder。请确保您有足够的NeoFinder许可证,因为只有拥有足够数量的许可证,网络功能才可以使用。

4.2K20
领券