天道酬勤,学无止境

ldap

在 ASP.NET Core 中使用 DirectoryServices(Working with DirectoryServices in ASP.NET Core)

问题 我正在将我的 ASP.NET Core RC1 应用程序升级到 RC2。 我在一些 *.cs 文件中有一些对System.DirectoryServices和System.DirectoryServices.AccountManagement引用,以便我可以查询 LDAP。 但我不知道如何在Project.json文件的 RC2 中添加对它的引用。 我尝试的一切只会给我更多的错误。 任何帮助表示赞赏。 { "version": "1.0.0-*", "buildOptions": { "emitEntryPoint": true, "preserveCompilationContext": true }, "dependencies": { "Microsoft.NETCore.App": { "version": "1.0.0-rc2-3002702", "type": "default" }, "Microsoft.AspNetCore.Diagnostics": "1.0.0-rc2-final", "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0-rc2-final", "Microsoft.AspNetCore.Mvc": "1.0.0-rc2-final", "Microsoft.AspNetCore.Mvc

2021-06-24 07:57:16    分类:技术分享    c#   asp.net-core   active-directory   ldap

UserPrincipal.FindByIdentity() 总是返回 null(UserPrincipal.FindByIdentity() always returns null)

问题 我正在使用 LdapAuthentication 将用户登录到 Active Directory。 我想找到用户所属的所有组。 我正在使用以下代码: string adPath = "LDAP://OU=HR Controlled Users,OU=All Users,DC=myDomain,DC=local"; LdapAuthentication adAuth = new LdapAuthentication(adPath); try { if (true == adAuth.IsAuthenticated("myDomain", txtLoginEmail.Text, txtLoginPassword.Text)) { string email = txtLoginEmail.Text; using (PrincipalContext context = new PrincipalContext(ContextType.Domain)) { UserPrincipal user = UserPrincipal.FindByIdentity(context, IdentityType.Name, email); foreach (var group in user.GetGroups()) { Console.WriteLine(group.Name); } } } }

2021-06-24 05:55:43    分类:技术分享    c#   asp.net   active-directory   ldap   principalcontext

SASL LDAP 身份验证失败(SASL LDAP authentication failure)

问题 尝试在RedHat Linux使用SASL和LDAP对用户进行身份验证。 到目前为止,我已经设置了saslauthd服务并开始运行。 我的/etc/saslauthd.conf如下所示: ldap_servers: ldaps://test.ldap.server:1234 ldap_use_sasl: yes ldap_mech: DIGEST-MD5 ldap_auth_method: fastbind ldap_search_base: Ou=PeopleAuthSrch,DC=abc,DC=com 我的/etc/sasl2/smtpd.conf如下所示: pwcheck_method: saslauthd mech_list: plain login 现在,当我尝试使用以下命令测试身份验证时: testsaslauthd -u username -p password -f /var/run/saslauthd/mux 我得到0: NO "authentication failed" 当我查看日志时,它说: Retrying authentication do_auth :auth failure: [user:myuser] [service=imap] [realm=] [mech=ldap] [reason=unknown] 我在这里错过了什么? 提前致谢!!

2021-06-24 04:41:51    分类:技术分享    authentication   ldap   sasl

Uncategorized exception for using correct credentials in LDAP authentication

I would like to implement LDAP authentication for a web application using Spring Boot. Here is my WebSecurityConfig class: @Configuration @EnableWebSecurity public class WebSecurityConfig extends WebSecurityConfigurerAdapter { @Override protected void configure(HttpSecurity http) throws Exception { http .authorizeRequests() .anyRequest() .authenticated() .and() .formLogin(); } @Configuration protected static class AuthenticationConfiguration extends GlobalAuthenticationConfigurerAdapter { @Override public void init(AuthenticationManagerBuilder auth) throws Exception { auth .ldapAuthentication(

2021-06-24 03:49:05    分类:问答    java   authentication   spring-security   ldap

Apache Directory Studio does not show Root DSE entries

we have a problem with Apache Directory Studio (Version: 2.0.0.v20200411-M15 and previous). When we connect to an OpenLDAP instance we can't see the naming contexts of the Root DSE. We have the OpenLDAP configured as multi-master and the strange thing is that in one node we can see it and not in the other. Root DSE with missing entry screenshot Root DSE showing the entry screenshot When we try to get the info via ldapsearch, we can see the correct naming context for both nodes: ldapsearch -H ldap://localhost:16389 -x -D "cn=adminLDAPI,ou=system,dc=XXXXXXX,dc=com" -W -s base -a always "

2021-06-24 03:48:32    分类:问答    browser   ldap   apache-directory

用于 Spring LDAP 身份验证的登录名(What login name to use for Spring LDAP authentication)

问题 我创建了一个本地 LDAP 服务器并添加了密码为“123456”的用户“djiao” 尝试使用 Spring Boot 使用 Spring Security 实现身份验证。 我的 webconfig 类如下: @Configuration @EnableWebSecurity public class WebSecurityConfig extends WebSecurityConfigurerAdapter { @Override protected void configure(HttpSecurity http) throws Exception { http .authorizeRequests() .anyRequest() .authenticated() .and() .formLogin(); } @Bean public ActiveDirectoryLdapAuthenticationProvider activeDirectoryLdapAuthenticationProvider() { ActiveDirectoryLdapAuthenticationProvider provider = new ActiveDirectoryLdapAuthenticationProvider("", "ldap://localhost:10389")

2021-06-24 03:39:28    分类:技术分享    spring-security   spring-boot   ldap

SASL bind over GSSAPI using kerberos credentials with ldap_sasl_bind_s function

I am trying to implement SASL bind over GSSAPI using kerberos credentials with ldap_sasl_bind_s function. I follow to the steps described in ldap_sasl_bind_s(GSSAPI) - What should be provided in the credentials BERVAL structure chain I get expected return values for all calls described in the mentioned chain, until the last(third) call to ldap_sasl_bind_s, which fails with LDAP_INVALID_CREDENTIALS error. Also I see the following error occurs in the windows event viewer Error value: 80090308: LdapErr: DSID-0C0904D1, comment: AcceptSecurityContext error, data 5, v1771 Please note I have two

2021-06-24 02:04:43    分类:问答    c++   active-directory   ldap   sspi   gssapi

如何在 C# 中从 LDAP 读取 TermainsServices IADsTSUserEx 属性?(How to read TermainsServices IADsTSUserEx Property from LDAP in C#?)

问题 我已经从 AD 中阅读了以下属性, TerminalServicesProfilePath TerminalServicesHomeDirectory TerminalServicesHomeDrive 我试过 DirectoryEntry 和 DirectorySearcher。 但它们不包括属性。 我在 vbscript 和 VC 中找到了一些例子来阅读它们。 但是我没有让它在 C# 中工作。 我错过了一些棘手的事情吗? 编辑:我是否必须在“Windows Server”上运行它才能使其正常工作? 可以从win XP中读取吗? 回答1 具体记不清了,大概是这样的: //user is a DirectoryEntry IADsTSUserEx adsiUser = (IADsTSUserEx)user.NativeObject; 然后您可以通过 adsiUser 获取所需的 TerminalServices 属性。 根据我的经验,由于您使用的库,您最好在可以访问 AD 的 Windows Server 上进行开发。 那么你可能也会完成上述工作:) 回答2 我认为您可以在DirectoryEntry上使用InvokeGet方法,传入您要读取的属性的名称。 2008-12-10 11:50 CET — 针对评论进行编辑 如果我指定垃圾属性名称,我会得到相同的 COM 异常。

2021-06-23 17:37:23    分类:技术分享    c#   ldap   c#-2.0   terminal-services   iadstsuserex

Java Tomcat LDAP authentication

Since I'm running Java with Tomcat6 as servlet container I found it appropriate to use the Tomcat JNDIRealm feature so that LDAP users can log into my site without any additional efforts. The LDAP server I'm using is OpenLDAP on Ubuntu. On top of this I have the login page using form-based authentication over an https connection. I found two very good examples of authentication users via LDAP, here and here, that both achieve what I feel I almost achieved. Why almost achieved? When I attempt to login with the wrong credentials I'm appropriately sent to the <form-error-page>, login-failed.html

2021-06-23 16:09:21    分类:问答    java   tomcat   ldap   tomcat6   openldap

如何将 Active Directory 用于 ASP.Net 5 (MVC6) Intranet 应用程序(How to use active Directory for ASP.Net 5 (MVC6) Intranet application)

问题 我正在开发一个 Intranet 应用程序,并希望使用现有组织 Active Directory 进行用户身份验证和基于策略的角色授权。 有人可以指出我正确的方向吗? 我有点困惑(实际上很困惑)。 谢谢 回答1 http://docs.asp.net/en/latest/security/index.html 下的每个身份验证和自动化资源 首先启动一个新的 ASP.Net Web 应用程序项目,选择 Web 应用程序模板,然后在右侧窗格中按“更改身份验证”按钮并选择“Windows 身份验证”。 您现在可以在类或方法上使用[Authorize]来检查基本身份验证与 RC2 的活动目录,您可以简单地使用组名称 ala [Authorize(Roles=@"DOMAIN\GROUP")] 现在已经过时且繁琐的替代方案(仍然有效): 如果您查看User.Claims您可以看到每个用户组都存在 groupid 键。 在此基础上,您可以执行类似[Authorize(Policy="FOOBAR")]并通过以下方式在您的Startup.ConfigureServices方法中定义它 services.AddAuthorization( o => o.AddPolicy( "FOOBAR", p => p.RequireClaim("http://schemas.microsoft.com

2021-06-23 09:13:09    分类:技术分享    asp.net   active-directory   ldap   asp.net-core-mvc