1 / 14

Google Apps identiteetinhallinta

Google Apps identiteetinhallinta. Jyväskylän yliopisto, IT-palvelut Viljo Viitanen viljo.v.viitanen@jyu.fi. Sisältö. Johdanto Kertakirjautuminen Erillinen salasana Käyttäjätunnusten hallinta Vanhojen käyttäjien migrointi Konfiguraatio- ja koodiesimerkkejä. Johdanto.

aderyn
Download Presentation

Google Apps identiteetinhallinta

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Google Apps identiteetinhallinta Jyväskylän yliopisto, IT-palvelut Viljo Viitanen viljo.v.viitanen@jyu.fi

  2. Sisältö Johdanto Kertakirjautuminen Erillinen salasana Käyttäjätunnusten hallinta Vanhojen käyttäjien migrointi Konfiguraatio- ja koodiesimerkkejä

  3. Johdanto Yliopisto päätti että vanhalle sähköpostijärjestelmälle on tehtävä jotain. Käytössä oli ”unix”-posti (uw imapd), uudempi Cyrus imapd ja Novell Groupwise. Sentään Groupwisestä on päästy jo eroon. Henkilökunta ja henkilökuntaan verrattavat jatko-opiskelijat ovat Microsoft Exchangessa, viimeiset siirrot ovat käynnissä. Opiskelijat päätettiin ulkoistaa, ja valinta osui Googleen Apuna projektissa oli Googlen suomalainen jälleenmyyjä Käynnissä on myös identiteetinhallinnan uudistaminen...

  4. Kertakirjautuminen Google tarjoaa SAML-tekniikkaan perustuvan kertakirjautumisen Shibboleth-ohjelmisto toimii mainiosti Kertakirjautuminen rajoitettu WWW:n Olisi myös mahdollista synkronoida salasanoja, mutta... Estää käytännössä Googlen "two step" kirjautumisen toiminnan

  5. Käyttäjätunnusten hallinta Käytetään sekä Googlen rajapintaa pythonilla että Googlen Directory Sync-työkalua Rajapinnalla: tunnusten luonti ”lennossa”, lähettäjäosoitteen asetus Directory Syncillä: nimenmuutokset, voimassaolo, haetaan käyttäjät paikallista ldapista ryhmällä

  6. Vanhojen käyttäjien migrointi Aloitus käyttäjähallintoportaalista Teknisesti otetaan käyttäjän salasana rsa-kryptattuna tietokantaan hetkeksi talteen Siirto tehdään imap:n yli imapsync-nimisellä työkalulla, meidän päässä oikea salasana, googlen päässä satunnainen Ongelmia on ollut jonkin verran: Jotkut postit eivät siirry, toisilla imap-kirjautuminen Cyrukseen ei onnistu Vaihtoehto: rajapinta, vaatii enemmän koodausta

  7. Hankaluuksia... Päätettiin antaa myös henkilökunnalle @jyu.fi -google -tunnukset Tunnuksia oli jo rekisteröity paljon, vähän yli 100 kpl etunimi.sukunimi@jyu.fi -muotoiset piti uudelleennimetä tunnus@jyu.fi -muotoisiksi On mahdollista, että samalla (vanhalla) sähköpostiosoitteella on kaksi erillistä google -tiliä... ("varsinainen" google.com -tili sekä "google apps" -tili)

  8. Google Appsin konfiguraatio Shibboleth IDP:n allekirjoitussertifikaatti SAML SSO-osoite ”domain specific issuer” jos kirjaudutaan samasta IDP:stä moneen google apps -domainiin Käyttäjätunnus välitetään SAML ”NameID”:nä, ei attribuuttina

  9. Google Appsin konfiguraatio

  10. Shibbolethin konfiguraatio Metadata: <EntityDescriptor entityID="google.com/a/student.jyu.fi" xmlns="urn:oasis:names: tc:SAML:2.0:metadata"> <SPSSODescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol"> <NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:email</NameIDFormat> <AssertionConsumerService index="1" Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://www.google.com/a/student.jyu.fi/acs" /> <AttributeConsumingService index="1" isDefault="true"> <ServiceName xml:lang="en">Isa mail</ServiceName> <ServiceName xml:lang="fi">Isa-posti</ServiceName> </AttributeConsumingService> </SPSSODescriptor> </EntityDescriptor> Attribute resolver: <resolver:AttributeDefinition id="googleprincipal" xsi:type="PrincipalName" xmlns="urn:mace:shibboleth:2.0:resolver:ad" > <resolver:AttributeEncoder xsi:type="SAML2StringNameID" xmlns="urn:mace:shibboleth:2.0:attribute:encoder" nameFormat="urn:oasis:names:tc:SAML:2.0:nameid-format:email" /> </resolver:AttributeDefinition> Attribute filter: <AttributeFilterPolicy id="googlestudent"> <PolicyRequirementRule xsi:type="basic:AttributeRequesterString" value="google.com/a/student.jyu.fi" /> <AttributeRule attributeID="googleprincipal"><PermitValueRule xsi:type="basic:ANY" /> </AttributeRule></AttributeFilterPolicy>

  11. Koodiesimerkkejä 1 Käyttäjätunnusten luonti. Merkistöjen kanssa oli hankaluuksia... displayname=sys.argv[4].decode("latin_1").encode("utf-8") surname=sys.argv[5].decode("latin_1").encode("utf-8") ... service.CreateUser(username, surname, displayname, googlepassword, suspended='false') service.CreateNickname(username, alias) ... name=displayname+" "+surname … client.CreateSendAs(username=username, name=name.decode("utf-8"), address=alias+'@'+domain, make_default=True)

  12. Koodiesimerkkejä 2 Salasanan vaihto. Dokumentaatio puutteellinen... password=sys.argv[2] ... e=service.RetrieveUser(username) e.login.password=password service.UpdateUser(username,e)

  13. Koodiesimerkkejä 3 Käyttäjätunnuksen uudelleennimeäminen. Taaskin Googlen dokumentaatio erittäin puutteellista username=sys.argv[1] new=sys.argv[2] ... service.UpdateUser(username, gdata.apps.UserEntry(login = gdata.apps.Login(user_name=new)))

  14. Kysymyksiä? Kiitos mielenkiinnosta!

More Related