Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo,...

34
Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri, Manager, UNIX Systems and Technical Solutions Group Advanced Information Technologies (AIT) in Academic Services and Emerging Technologies (ASET), a unit of Information Technology Services (ITS)

Transcript of Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo,...

Page 1: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Authentication at Penn State:The Present State of Affairs and Future Directions

James A. Vuccolo, Manager, Software Technologies Group

Phil Pishioneri, Manager, UNIX Systems and Technical Solutions Group

Advanced Information Technologies (AIT) in Academic Services and Emerging Technologies (ASET), a unit of Information Technology Services (ITS)

Page 2: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Agenda

• Introduction

• Current State of Affairs

• Future Directions

• Wrap Up

Page 3: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Introduction

• Definitions

• Account Types

Page 4: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Definitions

• Authentication (AuthN)– The process of validating that a user is who he or she says they are

• Is the user’s Userid and Password correct?

• Authorization (AuthZ)– The process of deciding if a user is allowed to have access to a

service• Is the user allowed to view a specific Web page?

• Single Sign-On (SSO)– The process by which a user logs on to a site and then can visit

other “protected” sites without the need to re-authenticate

Page 5: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Account Types

• Access Account– A digital identity and password that enables Penn State students,

faculty, and staff to use the full range of services either on or off campus

– Provides: Authentication, E-mail, PASS and an LDAP Entry

• Friends of Penn State Account– A digital identity and password that enables users outside of

Penn State to access applications within Penn State. (Most likely for Web-based applications).

– Provides: Authentication

Page 6: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Current State of Affairs

• Penn State Infrastructure

• Web Access Methods

Page 7: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Penn State Infrastructure

• Distributed Computing Environment (DCE)– Based on Kerberos V

– Provides Authentication and Authorization

• Distributed File System (DFS)– Enterprise-wide file system

– Also known as PASS (Penn State Access Account Storage Space)

Page 8: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Web Access Methods

Method AuthN AuthZ SSO

Mod_auth_external Yes Maybe No

Mod_auth_kerberos Yes No No

Mod_auth_DCE Yes Yes No

FPS API Yes No No

Shibboleth Yes Yes No

Page 9: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Demise of DCE/DFS

• IBM’s DCE/DFS, which is at the core of Penn State’s infrastructure no longer will be supported after April 2006

• ASET/ITS is looking for replacement options– DCE = Kerberos V + LDAP

– DFS = ???

Page 10: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Future Directions

• Kerberos (Authentication)

• LDAP (Authorization)

• CoSign (SSO)

Page 11: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Kerberos

• What is Kerberos?

• Kerberos Configuration Files

• Things to Know

Page 12: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

What is Kerberos?

• Kerberos is:– “…a network authentication protocol. It is designed to provide strong

authentication for client/server applications using secret-key cryptography”

• http://www.mit.edu/kerberos/www/

• Components– Key Distribution Center (KDC)

• Masters (located in Computer Building)

• Back-ups (located off-site)

– Clients

– Application Servers

Page 13: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Kerberos Configuration Files

• Access Accounts[libdefaults] default_realm = dce.psu.edu default_tkt_enctypes = des3-hmac-sha1 des-cbc-crc default_tgs_enctypes = des3-hmac-sha1 des-cbc-crc

[realms] dce.psu.edu = { kdc = fido.aset.psu.edu:88 kdc = sparky.offsite.psu.edu:88 kdc = scooby.aset.psu.edu:88 default_domain = .psu.edu }

[domain_realm] .psu.edu = dce.psu.edu psu.edu = dce.psu.edu

[logging] default = FILE:/var/log/krb5/krb5lib.log

• Friends of Penn State Accounts[libdefaults] default_realm = fops.psu.edu default_tkt_enctypes = des3-hmac-sha1 des-cbc-crc default_tgs_enctypes = des3-hmac-sha1 des-cbc-crc

[realms] fops.psu.edu = { kdc = fps.aset.psu.edu:88 kdc = rover.offsite.psu.edu:88 default_domain = .psu.edu }

[domain_realm] .psu.edu = dce.psu.edu psu.edu = dce.psu.edu

[logging] default = FILE:/var/log/krb5/krb5lib.log

Page 14: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Things to Know

• Our Access Account Kerberos KDCs are fully synced with DCE using Kerberos propagation– A full copy of the Kerberos database is dumped

– kprop command is used to sync the back-up KDCs

– This done is every 15 minutes, so password changes are not immediate

• Using MIT Kerberos solves a number of problems using tools such as Java for authentication

Page 15: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

LDAP

• What is it?

• Authorization Mechanisms– Roles

– Groups• Examples

• DCE vs. LDAP ACLs

Page 16: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

What is it?

• Lightweight Directory Access Protocol (LDAP)– Is a standard technology for network directories

– Network directories are specialized databases that store information about devices, applications, people and other aspects of a computer network

– At Penn State, LDAP is the replacement for Ph

• Usage Info– Server: ldap.psu.edu

– Port: 389

– Search Base: dc=psu,dc=edu

Page 17: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Roles

• Are attribute/value pairs– Examples (from my entry)

• eduPersonPrimaryAffiliation=STAFF

• eduPersonEntitlement=URN:PSU.EDU:MUSIC

– Users• Penn State Portal

• Shibboleth– Napster

– Physics Class

– PHEAA (Future application)

Page 18: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Groups

• DN containing a list of member DNs

• Types– Static

– Dynamic

– Hybrid

– Nested

• Rich set of Access Control Lists (ACLs) features

Page 19: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Group Examples

• Static GroupDn: cn=AIT Staff,dc=psu,dc=edu

objectClass: groupOfNames

Cn: AIT Staff

Member: psDirIdn=4,dc=psu,dc=edu

Member: psDirIdn=5,dc=psu,dc=edu

• Dynamic GroupDn: ITS Staff,dc=psu,dc=edu

objectClass: groupOfURLs

Cn: ITS Staff

memberURL: ldap:///dc=psu,dc=edu??subtree?(psAdminArea=ITS)

Page 20: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

DCE vs. LDAP ACLs

DCE• R = Read

• W = Write

• X = Execute

• C = Control

• I = Insert

• D = Delete

LDAP• R = Read

• W = Write

• S = Search

• C = Compare

• A = Add

• D = Delete

Page 21: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

CoSign

• WebAccess

• WebAccess Adopters

• Supported Web Servers

• Overview of Process

• Sample Configurations

• WebAccess Login Page

• WebAccess in Action…

Page 22: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

CoSign

• Technology behind the WebAccess service– Scheduled to be available this summer

– Initially only Access Accounts – FPS to be added

• Developed by the University of Michigan

Page 23: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

WebAccess

• Provides Single Sign-On for Web-based services• Cf. FPS API

– One login per session/timeout– No application coding– Password never on your Web server

• Can be combined with other functions to provide authorization (LDAP, local groups, etc.)

Page 24: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

WebAccess Adopters

• Initial ITS Services converting to it– Penn StatePortal

– Penn State WebMail

– eLion

– ANGEL

Page 25: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Supported Web Servers

• Apache (1 & 2)

• IIS (5 & 6)

• Tomcat

Page 26: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Overview of Service Login

• Case of person browsing to the service Web page (e.g., https://service.psu.edu/)

• Similar flow if starting from the WebAccess login page

• Based on documents written by University of Michigan

Page 27: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,
Page 28: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,
Page 29: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Sample Configurations

• Apache

• IIS

Page 30: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Apache

LoadModule cosign_module libexec/mod_cosign.so

CosignProtected OnCosignHostname webaccess.psu.eduCosignRedirect https://webaccess.psu.edu/CosignPostErrorRedirect

https://webaccess.psu.edu/post_error.htmlCosignService webconf-testCosignCrypto /psuopt/conf/ssl.key/my.key

/psuopt/conf/ssl.crt/my.crt /psuopt/conf/ssl.crt

Page 31: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

IIS

<Cosign><CAFilePath>C:\Program Files\IISCosign\SSL\ASET-CA.pem</CAFilePath><ChainFilePath>C:\Program Files\IISCosign\SSL\testsys.aset.psu.edu.cert</ChainFilePath>PrivateKeyFilePath>C:\Program

Files\IISCosign\SSL\testsys.aset.psu.edu.key</PrivateKeyFilePath><LogFilePath fileSizeInKB="4096">C:\Program Files\IISCosign\Logs</LogFilePath><CookieDBPath>C:\Program Files\IISCosign\CookieDB</CookieDBPath><CosignServer port="6663">webaccess.psu.edu</CosignServer><RedirectURL>https://webaccess.psu.edu/?</RedirectURL><ConnectionPool size="4" /><CookieDBExpireTime seconds="60" /><WriteDataToEventViewer>FALSE</WriteDataToEventViewer><CheckIPAddress>FALSE</CheckIPAddress><Service website=“testsys.aset.psu.edu">cosign-testsys-its Protected>/protected.htm</Protected></Service>

Page 32: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

WebAccess Login Page

Page 33: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

WebAccess in Action…

Page 34: Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,

Wrap Up

• Questions?