使用G Suite作为SAML身份提供商的Office365 / Azure AD

时间:2017-05-12 13:43:43

标签: single-sign-on azure-active-directory saml-2.0 google-apps-for-education gsuite

我正在尝试关注文章 https://msdn.microsoft.com/en-us/library/azure/dn641269.aspx https://support.google.com/a/answer/6363817?hl=en

for domain school.edu

当我打开私人浏览窗口并转到login.microsoftonline.com并在我的域中指定用户时,我会按预期重定向到Google以进行登录&密码。但是,输入有效凭据后,我将被重定向到带有错误

的Microsoft登录页面

我收到错误 其他技术信息: 相关ID:[编辑,不确定这是否是敏感ID] 时间戳:2017-05-11 19:15:31Z AADSTS50107:请求的联合领域对象“https://accounts.google.com/o/saml2?idpid= [id] ”不存在。

当直接访问时,其中列出的URL返回404,但可以直接访问https://accounts.google.com/o/saml2/idp?idpid= [id] (尽管有错误的SAML请求)。我将idp?idpid = [id]指定为权限的LogOnUri,但它似乎没有从那里拉出那个值。

我不确定如何从这里开始,除了向微软开出一张机票(他们上次我们通过不同方式尝试SSO时可能无法提供帮助,也许是一年前)。

1 个答案:

答案 0 :(得分:0)

在Office365中创建用户后,将需要设置其不可变IT。它应该与他们的Google用户主电子邮件地址匹配,该地址也应为其MS用户名。

启动Powershell

          script.
            var data = !{JSON.stringify(data)};
            function nextItem() {
              data = !{JSON.stringify(data)};
              console.log("The new data is:");
              console.log(data[0]);
              if (data){
                //- document.getElementById("label").innerHTML= "Current Tweet ID: " + curIndex
                document.getElementById("tweetText").innerHTML = data[0].tweet
              }
             }
             function relClick(){
               var xhr = new XMLHttpRequest();
               var newData = {'tweet':data[0].tweet,'relevant':1};
               var jsonData = JSON.stringify(newData);
               xhr.open("POST","/",true);
               xhr.setRequestHeader('Content-type','application/json');
               xhr.send(jsonData);
               console.log("Clicked Relevant");
               xhr = new XMLHttpRequest();
               xhr.open("GET","/",true);
               xhr.send();
               nextItem();
             }
             function irrClick(){
               var xhr = new XMLHttpRequest();
               var newData = {'tweet':data[0].tweet,'relevant':0};
               var jsonData = JSON.stringify(newData);
               xhr.open("POST","/",true);
               xhr.setRequestHeader('Content-type','application/json');
               xhr.send(jsonData);
               console.log(jsonData);
               console.log("Clicked Irrelevant")
               nextItem();
             }
             rel.addEventListener('click',relClick);
             irr.addEventListener('click',irrClick);
             next.addEventListener('click', nextItem);

对该过程进行了一些修改。

这对我有用。 ImmutableID是问题所在,通常由AzureAD Connect服务处理,如果您不运行本地AD基础结构,则该服务不存在。