ADFS 3.0登录页面不用输入域名的实现方法

在ADFS 2.0的登录页面,如果需要实现登录页面只输入域用户的用户名而不需要输入域名,可以直接修改FormsSignIn.aspx.cs文件(在IIS虚拟目录下可以找到)即可,但是ADFS 3.0不再依赖于IIS,磁盘上默认也没有对应的代码文件,因此,实现这个功能就需要通过PowerShell,下面是我们实现的具体步骤。


原理:通过自定义一个新主题,并导出主题包含的代码文件,再修改代码文件,增加我们的自定义代码来实现这个功能,最后导入自定义主题的代码文件,详细请参考微软官方文档Advanced Customization of AD FS Sign-in Pages

1)我们通过复制默认主题(default)来自定义一个新主题(crm_customize),命令为:New-AdfsWebTheme -Name crm_customize -SourceName default,执行效果如下图所示:

New-AdfsWebTheme -Name crm_customize -SourceName default


2)导出自定义的主题到C:\\ADFSTheme目录下,命令为:Export-AdfsWebTheme -DirectoryPath C:\\ADFSTheme -Name crm_customize,执行效果如下图所示:

Export-AdfsWebTheme -DirectoryPath C:\\ADFSTheme -Name crm_customize


3)在导出的主题目录下找到script\onload.js文件,修改onload.js文件,增加以下代码:

if (typeof Login != 'undefined') {
    Login.submitLoginRequest = function () {
        var u = new InputUtil();
        var e = new LoginErrors();
        var userName = document.getElementById(Login.userNameInput);
        var password = document.getElementById(Login.passwordInput);
        if (userName.value && !userName.value.match('[@\\\\]')) {
            var userNameValue = 'systexucom.com\\' + userName.value;
            document.forms['loginForm'].UserName.value = userNameValue;
        }

        if (!userName.value) {
            u.setError(userName, e.userNameFormatError);
            return false;
        }


        if (!password.value) {
            u.setError(password, e.passwordEmpty);
            return false;
        }
        document.forms['loginForm'].submit();
        return false;
    };
}

onload.js文件修改后的效果如下图所示:

onload.js修改后效果


4)把修改后的主题文件更新到自定义主题(crm_customize)中,命令为:Set-AdfsWebTheme -TargetName crm_customize -AdditionalFileResource @{Uri=’/adfs/portal/script/onload.js’;path="C:\ADFSTheme\script\onload.js"},执行效果如下图所示:

Set-AdfsWebTheme -TargetName crm_customize


5)设置自定义主题(crm_customize)为当前应用主题,命令为:Set-AdfsWebConfig -ActiveThemeName crm_customize,执行效果如下图所示:
Set-AdfsWebConfig -ActiveThemeName crm_customize

6)在ADFS 3.0的登录页面的录入效果如下图所示:
在ADFS 3.0的登录页面的录入效果


以上就是实现这个功能的全部步骤,希望对大家有所帮助!


原文章链接:http://blog.csdn.net/blackwolves/article/details/50995689

转载请说明原文章来自于熊猫园


  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值