首先,使用setspn命令为用户注册服务主体名称。
setspn -a CS/dummy@abc.com虚拟用户
setspn -l虚拟用户
给出输出为
CS/dummy@abc.com
接下来,当使用/ mapUser选项执行ktpass命令时,将修改用户帐户的服务主体名称,以便删除域组件。
ktpass / pass Password @ 123 -out dummy.1.keytab -princ CS/dummy@abc.com -crypto DES-CBC-MD5 + DumpSalt -ptype KRB5_NT_PRINCIPAL + desOnly / mapOp set / mapUser dummyuser
setspn -l虚拟用户
给出输出为
CS /虚拟
以下两个命令是否正确并且以相同的方式工作?
setspn -a CS /虚拟虚拟用户
setspn -a CS/dummy@abc.com虚拟用户
在SPN中指定服务名称时,是否也必须包含域组件?你能澄清一下吗?
我正在编写一个pGina插件,用于在登录时从我们的KDC获取AFS令牌和Kerberos TGT,同时写作我注意到kinit的一个"功能"是它不会让你提供任何输入,除非它来自键盘,我想到了只是重定向标准输入...
有人建议使用keytab文件作为主体,这看起来非常简单,直到我意识到我只在linux上使用kutil并且遇到了ktpass.exe的Windows版本的困难.我已经反复尝试使用大量参数组合来创建keytab但到目前为止绝对没有成功,我发出的当前命令是:
ktpass /out key.tab /mapuser user$@MERP.EDU /princ user.merp.edu@MERP.EDU /crypto RC4-HMAC-NT /ptype KRB5_NT_PRINCIPAL /pass mahpasswordlol /target MERP.EDU
不幸的是,这些产出都是
Using legacy password setting method
FAIL: ldap_bind_s failed: 0x31
根据我的研究,根据我的研究是认证/加密问题,我已经尝试了其他DES设置,但这似乎也没有用......任何人都有任何经验/想法如何这可能工作?
我已经阅读了很多关于如何在Asp.Net Web Api 2中实现完整的身份验证和授权系统的内容,其中包括注册,发送电子邮件确认,发出访问令牌和刷新令牌等等.毕竟我已经成功完成了所有这些工作.然而,对于每一个项目来说,它看起来都是不必要的.
我仍然不确定,但我相信"Thinktecture IdentityServer"是一个包装,已经整合在一起提供所有这些,我是对的吗?
如果是的话,任何人都可以(以非常直接的方式)告诉我如何创建一个新的Web Api项目并使用此软件包轻松获得上述所有功能?
security authentication thinktecture-ident-server asp.net-web-api2 thinktecture
所以我再次遇到一些AD和Kerberos问题.
好吧很酷,我从WWW-Authenticate标题中获得了一个kerberos令牌.现在我想针对AD验证此令牌,但我不知道如何.
我从GSSAPI中找到了一些东西,但没有看到将byte []作为Kerberos令牌或任何其他方式的函数或方法.
我正在运行Java EE Web应用程序.
我可以用这个令牌来获取用户,尤其是AD中的"此令牌和用户是否合法"?
编辑:
正如评论中所说,我真的很接近能够执行SSO.所以我会用你所拥有的东西来更新你们.
我有一台名为ping01的服务器和我的本地机器.作为用户mgmt在Tomcat上运行我有我的应用程序.所以我做了这一切:
在用户mgmt创建了SPN HTTP /ping01.cool.domain@COOL.DOMAIN.
krb5.conf的:
[libdefaults]
default_tkt_enctypes = aes256-cts rc4-hmac des3-cbc-sha1 des-cbc-md5 des-cbc-crc
default_tgs_enctypes = aes256-cts rc4-hmac des3-cbc-sha1 des-cbc-md5 des-cbc-crc
permitted_enctypes = aes256-cts rc4-hmac des3-cbc-sha1 des-cbc-md5 des-cbc-crc
default_realm = COOL.DOMAIN
kdc_timesync = 1
ccache_type = 5
forwardable = true
proxiable = true
[realms]
COOL.DOMAIN = {
kdc = kdc.cool.domain
admin_server = COOL.DOMAIN
default_domain = COOL.DOMAIN
}
[domain_realm]
cool.domain = COOL.DOMAIN
ping01 = COOL.DOMAIN
[login]
krb4_convert = true
krb4_get_tickets = false …Run Code Online (Sandbox Code Playgroud) 在python中,我可以这样下一个有效的代码:
r"path\path.exe"
Run Code Online (Sandbox Code Playgroud)
这允许我使用一个斜杠('\')符号而不是两个.cpp中有没有等价物?
我在Windows 10上运行Eclipse Neon,并且可以肯定的是,我始终能够使用两根手指使用笔记本电脑的触摸板向上,向下,向左和向右滚动。更新到Eclipse Neon之后,我无法使用触摸板水平滚动,而不得不手动向左和向右拖动滚动条,这很烦人。对于如何解决这个问题,有任何的建议吗?
谢谢。
我有一个在 Docker 容器内运行的 Java 程序。该程序需要执行一个应由主机系统运行的 shell 命令,但只需调用即可Runtime.getRuntime().exec(...)在 Docker 容器内执行它(理应如此)。
有没有办法可以从容器内部启动进程,以便该进程在外部运行?我怀疑 exec 命令应该通过 Docker 告诉它该命令本身需要在主机上运行,但我不知道该怎么做。
我在不同的网站上寻找上述问题的答案,但在每种情况下都有如何生成密钥表文件。我需要 keytab 来获取包含 kerberos 身份验证的 hbase 连接。
我正在使用Git并且是一个老家伙,我更喜欢在键盘上打我的意志,而不是在点击旅行中发送啮齿动物.所以,通常当我完成工作时,我会在控制台中进行类似的操作.
git add.
git commit --message"治愈癌症(或感觉就好)"
git push
我可以有一个静态脚本这样做,但遗憾的是,并非每天的贡献都像治疗癌症一样令人敬畏,所以我需要一个带有参数的脚本(如果没有提供,它可以被替换为例如" 驴 ".
我该如何创建这样的脚本?
我已经对它进行了一些研究,但得到了很多不同的建议,而且在PowerShell的能力水平上,我担心我会把事情弄得很糟糕.创建一个批处理文件将是一个选项,但现在我在PowerShell中做了一些魔术,我倒下了我应该多学习它.只要我们能保持学习曲线不是很陡,嘿嘿.
建议?
我想使用以下方法搜索AD时可以指定域控制器:
$principalContext = New-Object 'System.DirectoryServices.AccountManagement.PrincipalContext'([System.DirectoryServices.AccountManagement.ContextType]::Domain, $DomainControllerIpAddress, $Container)
Run Code Online (Sandbox Code Playgroud)
如何使用DirectoryEntry或指定域控制器DirectorySearcher?
powershell active-directory domaincontroller directorysearcher