<div dir="ltr">In case you hadn't heard, Google Apps is in the SAML IdP business now, <a href="https://support.google.com/a/answer/6087519?hl=en">https://support.google.com/a/answer/6087519?hl=en</a><br><div><br></div><div>Observations:</div><div><br></div><div>- They spawn an entityID per customer of form <a href="https://accounts.google.com/o/saml2?idpid=">https://accounts.google.com/o/saml2?idpid=</a><random string></div><div>- They supply metadata that works in the shib2 native SP.</div><div>- They can consume SP metadata from a form file submission or URL.</div><div>- For ACS, the HTTP-POST and HTTP-Redirect endpoints both work. </div><div>- Leave Start URL blank.</div><div>- As expected they send  <md:NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress</md:NameIDFormat></div><div><div style="font-size:12.8px">- Standard Google user properties can be released as SAML 2.0 attributes: givenname, surname, email, organizationalunit, job title, telephone if Google knows it.</div><div style="font-size:12.8px">- The attribute and NameID formats are unspecified. The below in attribute-map.xml "worked" for me. Please let me know if any of this is wrong or insecure. They don't appear to scope email address in any way so the recent Office 365 "SAML" vulnerability likely applies to sites that trust the Google IdP.</div><div><div><span style="font-size:12.8px">    <Attribute name="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified" id="google-id"></span></div><div><span style="font-size:12.8px">        <AttributeDecoder xsi:type="NameIDAttributeDecoder" formatter="$Name" defaultQualifiers="true"/></span></div><div><span style="font-size:12.8px">    </Attribute></span></div></div><div><span style="font-size:12.8px">    <Attribute name="googleSurname" nameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified" id="googleSurname"/></span></div><div style="font-size:12.8px"><span style="font-size:12.8px">- User experience is transparent. If user is signed on, they go straight through. If they aren't, they get the standard </span><span style="font-size:12.8px"><a href="http://accounts.google.com">accounts.google.com</a></span><span style="font-size:12.8px"> </span><span style="font-size:12.8px">including ability to choose among multiple simultaneously signed-on google accounts.</span><br></div><div style="font-size:12.8px">- Unlike OAuth2, the user is <b>not</b> prompted to authorize the app. It is automatically trusted to receive the attributes explicitly released by the Google Apps administrator.</div><div style="font-size:12.8px">- Similarly, the SAML app does not appear in the <a href="http://myaccount.google.com">myaccount.google.com</a> list of connected sites and you cannot revoke access.</div><div style="font-size:12.8px">- However, each SAML app does show up in the user hub, see wiki-carleton at bottom right. This could be good or bad depending on the number and sensitivity of apps. App access can be scoped to OUs, though.</div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px"><img src="https://mail.google.com/mail/u/1/?ui=2&ik=6ee8d4a44a&view=fimg&th=1559d5bf70e73bbf&attid=0.1&disp=emb&realattid=ii_1559d59075683268&attbid=ANGjdJ-KVtj-dD1l6jYq9_9b4VNB2X_my3_-CNjAtlq5tBb-n0yuQNPL0J-Q0l6N3BgwHFdoxUq8qVjZj4_jXHXiYoBe8wiG-NjIzHMQdNGY96QOl_z85miu1WeCvjo&sz=w908-h478&ats=1467242954570&rm=1559d5bf70e73bbf&zw&atsh=1" alt="Inline image 1" width="454" height="239" class="" tabindex="0"></div></div></div>