CINXE.COM
Penn Community Re-Engineering Project | UPenn ISC
<!DOCTYPE html> <html class="no-js loading" xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en" version="XHTML+RDFa 1.0" dir="ltr" xmlns:fb="https://ogp.me/ns/fb#" xmlns:og="https://ogp.me/ns#"> <head profile="http://www.w3.org/1999/xhtml/vocab"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><script type="text/javascript">(window.NREUM||(NREUM={})).init={ajax:{deny_list:["bam.nr-data.net"]}};(window.NREUM||(NREUM={})).loader_config={licenseKey:"91e11a190c",applicationID:"4961301"};;/*! For license information please see nr-loader-rum-1.274.0.min.js.LICENSE.txt */ (()=>{var e,t,r={8122:(e,t,r)=>{"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555:(e,t,r)=>{"use strict";r.d(t,{Vp:()=>c,fn:()=>s,x1:()=>u});var n=r(384),i=r(8122);const o={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0},a={};function s(e){try{const t=c(e);return!!t.licenseKey&&!!t.errorBeacon&&!!t.applicationID}catch(e){return!1}}function c(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}function u(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.info=a[e])}},9417:(e,t,r)=>{"use strict";r.d(t,{D0:()=>g,gD:()=>h,xN:()=>p});var n=r(993);const i=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var o=r(2614),a=r(944),s=r(384),c=r(8122);const u="[data-nr-mask]",d=()=>{const e={mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,harvestTimeSeconds:10,autoStart:!0},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},feature_flags:[],generic_events:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},harvest:{tooManyRequestsDelay:60},jserrors:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},logging:{enabled:!0,harvestTimeSeconds:10,autoStart:!0,level:n.p_.INFO},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:o.wk,inactiveMs:o.BB},session_replay:{autoStart:!0,enabled:!1,harvestTimeSeconds:60,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){i(t)?e.mask_selector="".concat(t,",").concat(u):""===t||null===t?e.mask_selector=u:(0,a.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){i(t)?e.block_selector+=",".concat(t):""!==t&&(0,a.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,a.R)(7,t)}},session_trace:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},soft_navigations:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},spa:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},ssl:void 0,user_actions:{enabled:!0}}},l={},f="All configuration objects require an agent identifier!";function g(e){if(!e)throw new Error(f);if(!l[e])throw new Error("Configuration for ".concat(e," was never set"));return l[e]}function p(e,t){if(!e)throw new Error(f);l[e]=(0,c.a)(t,d());const r=(0,s.nY)(e);r&&(r.init=l[e])}function h(e,t){if(!e)throw new Error(f);var r=g(e);if(r){for(var n=t.split("."),i=0;i<n.length-1;i++)if("object"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}},3371:(e,t,r)=>{"use strict";r.d(t,{V:()=>f,f:()=>l});var n=r(8122),i=r(384),o=r(6154),a=r(9324);let s=0;const c={buildEnv:a.F3,distMethod:a.Xs,version:a.xv,originTime:o.WN},u={customTransaction:void 0,disabled:!1,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,onerror:void 0,ptid:void 0,releaseIds:{},appMetadata:{},session:void 0,denyList:void 0,timeKeeper:void 0,obfuscator:void 0},d={};function l(e){if(!e)throw new Error("All runtime objects require an agent identifier!");if(!d[e])throw new Error("Runtime for ".concat(e," was never set"));return d[e]}function f(e,t){if(!e)throw new Error("All runtime objects require an agent identifier!");d[e]={...(0,n.a)(t,u),...c},Object.hasOwnProperty.call(d[e],"harvestCount")||Object.defineProperty(d[e],"harvestCount",{get:()=>++s});const r=(0,i.nY)(e);r&&(r.runtime=d[e])}},9324:(e,t,r)=>{"use strict";r.d(t,{F3:()=>i,Xs:()=>o,xv:()=>n});const n="1.274.0",i="PROD",o="CDN"},6154:(e,t,r)=>{"use strict";r.d(t,{OF:()=>c,RI:()=>i,WN:()=>d,bv:()=>o,gm:()=>a,mw:()=>s,sb:()=>u});var n=r(1863);const i="undefined"!=typeof window&&!!window.document,o="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),s=Boolean("hidden"===a?.document?.visibilityState),c=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),u=c&&"undefined"==typeof SharedWorker,d=((()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);Array.isArray(e)&&e.length>=2&&e[1]})(),Date.now()-(0,n.t)())},1687:(e,t,r)=>{"use strict";r.d(t,{Ak:()=>c,Ze:()=>l,x3:()=>u});var n=r(7836),i=r(3606),o=r(860),a=r(2646);const s={};function c(e,t){const r={staged:!1,priority:o.P3[t]||0};d(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){e&&s[e]&&(s[e].get(t)&&s[e].delete(t),g(e,t,!1),s[e].size&&f(e))}function d(e){if(!e)throw new Error("agentIdentifier required");s[e]||(s[e]=new Map)}function l(e="",t="feature",r=!1){if(d(e),!e||!s[e].get(t)||r)return g(e,t);s[e].get(t).staged=!0,f(e)}function f(e){const t=Array.from(s[e]);t.every((([e,t])=>t.staged))&&(t.sort(((e,t)=>e[1].priority-t[1].priority)),t.forEach((([t])=>{s[e].delete(t),g(e,t)})))}function g(e,t,r=!0){const o=e?n.ee.get(e):n.ee,s=i.i.handlers;if(!o.aborted&&o.backlog&&s){if(r){const e=o.backlog[t],r=s[t];if(r){for(let t=0;e&&t<e.length;++t)p(e[t],r);Object.entries(r).forEach((([e,t])=>{Object.values(t||{}).forEach((t=>{t[0]?.on&&t[0]?.context()instanceof a.y&&t[0].on(e,t[1])}))}))}}o.isolatedBacklog||delete s[t],o.backlog[t]=null,o.emit("drain-"+t,[])}}function p(e,t){var r=e[1];Object.values(t[r]||{}).forEach((t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],o=e[2];n.apply(i,o)}}))}},7836:(e,t,r)=>{"use strict";r.d(t,{P:()=>c,ee:()=>u});var n=r(384),i=r(8990),o=r(3371),a=r(2646),s=r(5607);const c="nr@context:".concat(s.W),u=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&(0,o.f)(r).isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,o){!1!==o&&(o=!0);if(u.aborted&&!i)return;t&&o&&t.emit(e,r,n);for(var a=g(n),c=h(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var p=m()[s[e]];p&&p.push([f,e,r,a]);return a},get:v,listeners:h,context:g,buffer:function(e,t){const r=m();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach((([e,n])=>{s[n]=t,t in r||(r[t]=[])}))},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach((e=>{delete f.backlog[e]}))},isBuffering:function(e){return!!m()[s[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function g(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,c,(()=>new a.y(c))):new a.y(c)}function p(e,t){n[e]=h(e).concat(t)}function h(e){return n[e]||[]}function v(t){return d[t]=d[t]||e(f,t)}function m(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=u)},2646:(e,t,r)=>{"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908:(e,t,r)=>{"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606:(e,t,r)=>{"use strict";r.d(t,{i:()=>o});var n=r(9908);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.d,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.d);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3878:(e,t,r)=>{"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function o(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>o,jT:()=>n,sp:()=>i})},5607:(e,t,r)=>{"use strict";r.d(t,{W:()=>n});const n=(0,r(9566).bz)()},9566:(e,t,r)=>{"use strict";r.d(t,{LA:()=>s,bz:()=>a});var n=r(6154);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map((e=>"x"===e?o(t,r++).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s<e;s++)a.push(o(r,i++).toString(16));return a.join("")}},2614:(e,t,r)=>{"use strict";r.d(t,{BB:()=>a,H3:()=>n,g:()=>u,iL:()=>c,tS:()=>s,uh:()=>i,wk:()=>o});const n="NRBA",i="SESSION",o=144e5,a=18e5,s={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},u={OFF:0,FULL:1,ERROR:2}},1863:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},944:(e,t,r)=>{"use strict";function n(e,t){"function"==typeof console.debug&&console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t)}r.d(t,{R:()=>n})},5284:(e,t,r)=>{"use strict";r.d(t,{t:()=>c,B:()=>s});var n=r(7836),i=r(6154);const o="newrelic";const a=new Set,s={};function c(e,t){const r=n.ee.get(t);s[t]??={},e&&"object"==typeof e&&(a.has(t)||(r.emit("rumresp",[e]),s[t]=e,a.add(t),function(e={}){try{i.gm.dispatchEvent(new CustomEvent(o,{detail:e}))}catch(e){}}({loaded:!0})))}},8990:(e,t,r)=>{"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389:(e,t,r)=>{"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout((()=>{i=clearTimeout(i)}),t)),n||(clearTimeout(i),i=setTimeout((()=>{e.apply(this,r)}),t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},5289:(e,t,r)=>{"use strict";r.d(t,{GG:()=>o,sB:()=>a});var n=r(3878);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.sp)("load",e,t)}function a(e){if(i())return e();(0,n.DD)("DOMContentLoaded",e)}},384:(e,t,r)=>{"use strict";r.d(t,{NT:()=>o,US:()=>d,Zm:()=>a,bQ:()=>c,dV:()=>s,nY:()=>u,pV:()=>l});var n=r(6154),i=r(1863);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function s(){let e=a();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function d(e,t){a()[e]=t}function l(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},2843:(e,t,r)=>{"use strict";r.d(t,{u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",(function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)}),r,i)}},3434:(e,t,r)=>{"use strict";r.d(t,{YM:()=>c});var n=r(7836),i=r(5607);const o="nr@original:".concat(i.W);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");const a="-"===n.charAt(0);for(let s=0;s<t.length;s++){const c=t[s],u=e[c];d(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return d(t)?t:(r||(r=""),nrWrapper[o]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach((function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})})),t}catch(e){u([e],r)}for(var n in e)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,d,l;try{a=this,o=[...arguments],d="function"==typeof n?n(o,a):n||{}}catch(t){u([t,"",[o,a,s],d],e)}i(r+"start",[o,a,s],d,c);try{return l=t.apply(a,o)}catch(e){throw i(r+"err",[o,a,e],d,c),e}finally{i(r+"end",[o,a,l],d,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function d(e){return!(e&&"function"==typeof e&&e.apply&&!e[o])}},993:(e,t,r)=>{"use strict";r.d(t,{ET:()=>o,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o="log";n.K7.logging},3969:(e,t,r)=>{"use strict";r.d(t,{TZ:()=>n,XG:()=>s,rs:()=>i,xV:()=>a,z_:()=>o});const n=r(860).K7.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},6630:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewEvent},782:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewTiming},6344:(e,t,r)=>{"use strict";r.d(t,{G4:()=>i});var n=r(2614);r(860).K7.sessionReplay;const i={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"};n.g.ERROR,n.g.FULL,n.g.OFF},4234:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(7836),i=r(1687);class o{constructor(e,t){this.agentIdentifier=e,this.ee=n.ee.get(e),this.featureName=t,this.blocked=!1}deregisterDrain(){(0,i.x3)(this.agentIdentifier,this.featureName)}}},7603:(e,t,r)=>{"use strict";r.d(t,{j:()=>P});var n=r(860),i=r(2555),o=r(3371),a=r(9908),s=r(7836),c=r(1687),u=r(5289),d=r(6154),l=r(944),f=r(3969),g=r(384),p=r(6344);const h=["setErrorHandler","finished","addToTrace","addRelease","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",p.G4.RECORD,p.G4.PAUSE,"log","wrapLogger"],v=["setErrorHandler","finished","addToTrace","addRelease"];var m=r(1863),b=r(2614),y=r(993);var w=r(2646),A=r(3434);function R(e,t,r,n){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const i=function(e){return(e||s.ee).get("logger")}(e),o=(0,A.YM)(i),a=new w.y(s.P);return a.level=n.level,a.customAttributes=n.customAttributes,o.inPlace(t,[r],"wrap-logger-",a),i}function E(){const e=(0,g.pV)();h.forEach((t=>{e[t]=(...r)=>function(t,...r){let n=[];return Object.values(e.initializedAgents).forEach((e=>{e&&e.api?e.exposed&&e.api[t]&&n.push(e.api[t](...r)):(0,l.R)(38,t)})),n.length>1?n:n[0]}(t,...r)}))}const x={};function _(e,t,g=!1){t||(0,c.Ak)(e,"api");const h={};var w=s.ee.get(e),A=w.get("tracer");x[e]=b.g.OFF,w.on(p.G4.REPLAY_RUNNING,(t=>{x[e]=t}));var E="api-",_=E+"ixn-";function N(t,r,n,o){const a=(0,i.Vp)(e);return null===r?delete a.jsAttributes[t]:(0,i.x1)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),j(E,n,!0,o||null===r?"session":void 0)(t,r)}function T(){}h.log=function(e,{customAttributes:t={},level:r=y.p_.INFO}={}){(0,a.p)(f.xV,["API/log/called"],void 0,n.K7.metrics,w),function(e,t,r={},i=y.p_.INFO){(0,a.p)(f.xV,["API/logging/".concat(i.toLowerCase(),"/called")],void 0,n.K7.metrics,e),(0,a.p)(y.ET,[(0,m.t)(),t,r,i],void 0,n.K7.logging,e)}(w,e,t,r)},h.wrapLogger=(e,t,{customAttributes:r={},level:i=y.p_.INFO}={})=>{(0,a.p)(f.xV,["API/wrapLogger/called"],void 0,n.K7.metrics,w),R(w,e,t,{customAttributes:r,level:i})},v.forEach((e=>{h[e]=j(E,e,!0,"api")})),h.addPageAction=j(E,"addPageAction",!0,n.K7.genericEvents),h.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,o.f)(e).customTransaction=(r||"http://custom.transaction")+t,j(E,"setPageViewName",!0)()},h.setCustomAttribute=function(e,t,r=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return N(e,t,"setCustomAttribute",r);(0,l.R)(40,typeof t)}else(0,l.R)(39,typeof e)},h.setUserId=function(e){if("string"==typeof e||null===e)return N("enduser.id",e,"setUserId",!0);(0,l.R)(41,typeof e)},h.setApplicationVersion=function(e){if("string"==typeof e||null===e)return N("application.version",e,"setApplicationVersion",!1);(0,l.R)(42,typeof e)},h.start=()=>{try{(0,a.p)(f.xV,["API/start/called"],void 0,n.K7.metrics,w),w.emit("manual-start-all")}catch(e){(0,l.R)(23,e)}},h[p.G4.RECORD]=function(){(0,a.p)(f.xV,["API/recordReplay/called"],void 0,n.K7.metrics,w),(0,a.p)(p.G4.RECORD,[],void 0,n.K7.sessionReplay,w)},h[p.G4.PAUSE]=function(){(0,a.p)(f.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,w),(0,a.p)(p.G4.PAUSE,[],void 0,n.K7.sessionReplay,w)},h.interaction=function(e){return(new T).get("object"==typeof e?e:{})};const S=T.prototype={createTracer:function(e,t){var r={},i=this,o="function"==typeof t;return(0,a.p)(f.xV,["API/createTracer/called"],void 0,n.K7.metrics,w),g||(0,a.p)(_+"tracer",[(0,m.t)(),e,r],i,n.K7.spa,w),function(){if(A.emit((o?"":"no-")+"fn-start",[(0,m.t)(),i,o],r),o)try{return t.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw A.emit("fn-err",[arguments,this,t],r),t}finally{A.emit("fn-end",[(0,m.t)()],r)}}}};function j(e,t,r,i){return function(){return(0,a.p)(f.xV,["API/"+t+"/called"],void 0,n.K7.metrics,w),i&&(0,a.p)(e+t,[(0,m.t)(),...arguments],r?null:this,i,w),r?void 0:this}}function k(){r.e(296).then(r.bind(r,8778)).then((({setAPI:t})=>{t(e),(0,c.Ze)(e,"api")})).catch((e=>{(0,l.R)(27,e),w.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{S[e]=j(_,e,void 0,g?n.K7.softNav:n.K7.spa)})),h.setCurrentRouteName=g?j(_,"routeName",void 0,n.K7.softNav):j(E,"routeName",!0,n.K7.spa),h.noticeError=function(t,r){"string"==typeof t&&(t=new Error(t)),(0,a.p)(f.xV,["API/noticeError/called"],void 0,n.K7.metrics,w),(0,a.p)("err",[t,(0,m.t)(),!1,r,!!x[e]],void 0,n.K7.jserrors,w)},d.RI?(0,u.GG)((()=>k()),!0):k(),h}var N=r(9417),T=r(8122);const S={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},j={};var k=r(5284);const I=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};let O=!1;function P(e,t={},r,n){let{init:a,info:c,loader_config:u,runtime:l={},exposed:f=!0}=t;l.loaderType=r;const p=(0,g.pV)();c||(a=p.init,c=p.info,u=p.loader_config),(0,N.xN)(e.agentIdentifier,a||{}),function(e,t){if(!e)throw new Error("All loader-config objects require an agent identifier!");j[e]=(0,T.a)(t,S);const r=(0,g.nY)(e);r&&(r.loader_config=j[e])}(e.agentIdentifier,u||{}),c.jsAttributes??={},d.bv&&(c.jsAttributes.isWorker=!0),(0,i.x1)(e.agentIdentifier,c);const h=(0,N.D0)(e.agentIdentifier),v=[c.beacon,c.errorBeacon];O||(h.proxy.assets&&(I(h.proxy.assets),v.push(h.proxy.assets)),h.proxy.beacon&&v.push(h.proxy.beacon),E(),(0,g.US)("activatedFeatures",k.B),e.runSoftNavOverSpa&&=!0===h.soft_navigations.enabled&&h.feature_flags.includes("soft_nav")),l.denyList=[...h.ajax.deny_list||[],...h.ajax.block_internal?v:[]],l.ptid=e.agentIdentifier,(0,o.V)(e.agentIdentifier,l),e.ee=s.ee.get(e.agentIdentifier),void 0===e.api&&(e.api=_(e.agentIdentifier,n,e.runSoftNavOverSpa)),void 0===e.exposed&&(e.exposed=f),O=!0}},8374:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860:(e,t,r)=>{"use strict";r.d(t,{$J:()=>o,K7:()=>n,P3:()=>i});const n={ajax:"ajax",genericEvents:"generic_events",jserrors:"jserrors",logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations",spa:"spa"},i={[n.pageViewEvent]:1,[n.pageViewTiming]:2,[n.metrics]:3,[n.jserrors]:4,[n.spa]:5,[n.ajax]:6,[n.sessionTrace]:7,[n.softNav]:8,[n.sessionReplay]:9,[n.logging]:10,[n.genericEvents]:11},o={[n.pageViewTiming]:"events",[n.ajax]:"events",[n.spa]:"events",[n.softNav]:"events",[n.metrics]:"jserrors",[n.jserrors]:"jserrors",[n.sessionTrace]:"browser/blobs",[n.sessionReplay]:"browser/blobs",[n.logging]:"browser/logs",[n.genericEvents]:"ins"}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>"nr-rum-1.274.0.min.js",i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.274.0.PROD:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d<u.length;d++){var l=u[d];if(l.getAttribute("src")==r||l.getAttribute("data-webpack")==t+o){s=l;break}}if(!s){c=!0;var f={296:"sha512-gkYkZDAwQ9PwaDXs2YM+rNIdRej1Ac1mupWobRJ8eahQcXz6/sunGZCKklrzi5kWxhOGRZr2tn0rEKuLTXzfAA=="};(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",t+o),s.src=r,0!==s.src.indexOf(window.location.origin+"/")&&(s.crossOrigin="anonymous"),f[a]&&(s.integrity=f[a])}e[r]=[n];var g=(t,n)=>{s.onerror=s.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},p=setTimeout(g.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=g.bind(null,s.onerror),s.onload=g.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="https://js-agent.newrelic.com/",(()=>{var e={840:0,374:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u<a.length;u++)o=a[u],i.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=self["webpackChunk:NRBA-1.274.0.PROD"]=self["webpackChunk:NRBA-1.274.0.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(8374);var e=i(944),t=i(6344),r=i(9566);class n{agentIdentifier;constructor(e=(0,r.LA)(16)){this.agentIdentifier=e}#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}addPageAction(e,t){return this.#e("addPageAction",e,t)}setPageViewName(e,t){return this.#e("setPageViewName",e,t)}setCustomAttribute(e,t,r){return this.#e("setCustomAttribute",e,t,r)}noticeError(e,t){return this.#e("noticeError",e,t)}setUserId(e){return this.#e("setUserId",e)}setApplicationVersion(e){return this.#e("setApplicationVersion",e)}setErrorHandler(e){return this.#e("setErrorHandler",e)}addRelease(e,t){return this.#e("addRelease",e,t)}log(e,t){return this.#e("log",e,t)}}class o extends n{#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}start(){return this.#e("start")}finished(e){return this.#e("finished",e)}recordReplay(){return this.#e(t.G4.RECORD)}pauseReplay(){return this.#e(t.G4.PAUSE)}addToTrace(e){return this.#e("addToTrace",e)}setCurrentRouteName(e){return this.#e("setCurrentRouteName",e)}interaction(){return this.#e("interaction")}wrapLogger(e,t,r){return this.#e("wrapLogger",e,t,r)}}var a=i(860),s=i(9417);const c=Object.values(a.K7);function u(e){const t={};return c.forEach((r=>{t[r]=function(e,t){return!0===(0,s.gD)(t,"".concat(e,".enabled"))}(r,e)})),t}var d=i(7603);var l=i(1687),f=i(4234),g=i(5289),p=i(6154),h=i(384);const v=e=>p.RI&&!0===(0,s.gD)(e,"privacy.cookies_enabled");function m(e){return!!(0,h.dV)().o.MO&&v(e)&&!0===(0,s.gD)(e,"session_trace.enabled")}var b=i(6389);class y extends f.W{constructor(e,t,r=!0){super(e.agentIdentifier,t),this.auto=r,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===e.init[this.featureName].autoStart&&(this.auto=!1),this.auto?(0,l.Ak)(e.agentIdentifier,t):this.ee.on("manual-start-all",(0,b.J)((()=>{(0,l.Ak)(e.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator(e)})))}importAggregator(t,r={}){if(this.featAggregate||!this.auto)return;let n;this.onAggregateImported=new Promise((e=>{n=e}));const o=async()=>{let o;try{if(v(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(296).then(i.bind(i,3861));o=e(t)}}catch(t){(0,e.R)(20,t),this.ee.emit("internal-error",[t]),this.featureName===a.K7.sessionReplay&&this.abortHandler?.()}try{if(t.sharedAggregator)await t.sharedAggregator;else{t.sharedAggregator=i.e(296).then(i.bind(i,9337));const{EventAggregator:e}=await t.sharedAggregator;t.sharedAggregator=new e}if(!this.#t(this.featureName,o))return(0,l.Ze)(this.agentIdentifier,this.featureName),void n(!1);const{lazyFeatureLoader:e}=await i.e(296).then(i.bind(i,6103)),{Aggregate:a}=await e(this.featureName,"aggregate");this.featAggregate=new a(t,r),n(!0)}catch(t){(0,e.R)(34,t),this.abortHandler?.(),(0,l.Ze)(this.agentIdentifier,this.featureName,!0),n(!1),this.ee&&this.ee.abort()}};p.RI?(0,g.GG)((()=>o()),!0):o()}#t(e,t){switch(e){case a.K7.sessionReplay:return m(this.agentIdentifier)&&!!t;case a.K7.sessionTrace:return!!t;default:return!0}}}var w=i(6630);class A extends y{static featureName=w.T;constructor(e,t=!0){super(e,w.T,t),this.importAggregator(e)}}var R=i(9908),E=i(2843),x=i(3878),_=i(782),N=i(1863);class T extends y{static featureName=_.T;constructor(e,t=!0){super(e,_.T,t),p.RI&&((0,E.u)((()=>(0,R.p)("docHidden",[(0,N.t)()],void 0,_.T,this.ee)),!0),(0,x.sp)("pagehide",(()=>(0,R.p)("winPagehide",[(0,N.t)()],void 0,_.T,this.ee))),this.importAggregator(e))}}var S=i(3969);class j extends y{static featureName=S.TZ;constructor(e,t=!0){super(e,S.TZ,t),this.importAggregator(e)}}new class extends o{constructor(t,r){super(r),p.gm?(this.features={},(0,h.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(A),this.runSoftNavOverSpa=[...this.desiredFeatures].some((e=>e.featureName===a.K7.softNav)),(0,d.j)(this,t,t.loaderType||"agent"),this.run()):(0,e.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}run(){try{const t=u(this.agentIdentifier),r=[...this.desiredFeatures];r.sort(((e,t)=>a.P3[e.featureName]-a.P3[t.featureName])),r.forEach((r=>{if(!t[r.featureName]&&r.featureName!==a.K7.pageViewEvent)return;if(this.runSoftNavOverSpa&&r.featureName===a.K7.spa)return;if(!this.runSoftNavOverSpa&&r.featureName===a.K7.softNav)return;const n=function(e){switch(e){case a.K7.ajax:return[a.K7.jserrors];case a.K7.sessionTrace:return[a.K7.ajax,a.K7.pageViewEvent];case a.K7.sessionReplay:return[a.K7.sessionTrace];case a.K7.pageViewTiming:return[a.K7.pageViewEvent];default:return[]}}(r.featureName).filter((e=>!(e in this.features)));n.length>0&&(0,e.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)}))}catch(t){(0,e.R)(22,t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,h.Zm)();delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[A,T,j],loaderType:"lite"})})()})();</script> <link rel="shortcut icon" href="https://www.isc.upenn.edu/favicon.ico" type="image/vnd.microsoft.icon" /> <meta name="description" content="As part of Penn’s Identity & Access Management (IAM) program, Penn’s core IAM infrastructure is undergoing a re-engineering to replace decades-old, custom-built identity management systems and processes with a standards-based, modern solution to strengthen Penn’s overall security posture and ability to comply with emerging global regulatory requirements." /> <meta name="generator" content="Drupal 7 (https://www.drupal.org)" /> <link rel="canonical" href="https://www.isc.upenn.edu/penn-community-re-engineering-project" /> <link rel="shortlink" href="https://www.isc.upenn.edu/node/3865" /> <meta property="og:site_name" content="UPenn ISC" /> <meta property="og:type" content="article" /> <meta property="og:title" content="Penn Community Re-Engineering Project" /> <meta property="og:url" content="https://www.isc.upenn.edu/penn-community-re-engineering-project" /> <meta property="og:description" content="As part of Penn’s Identity & Access Management (IAM) program, Penn’s core IAM infrastructure is undergoing a re-engineering to replace decades-old, custom-built identity management systems and processes with a standards-based, modern solution to strengthen Penn’s overall security posture and ability to comply with emerging global regulatory requirements." /> <meta property="og:updated_time" content="2022-05-03T17:45:47-04:00" /> <meta property="og:image" content="https://www.isc.upenn.edu/sites/default/files/iam-ben3.jpg" /> <meta name="twitter:card" content="summary" /> <meta name="twitter:url" content="https://www.isc.upenn.edu/penn-community-re-engineering-project" /> <meta name="twitter:title" content="Penn Community Re-Engineering Project" /> <meta name="twitter:description" content="As part of Penn’s Identity & Access Management (IAM) program, Penn’s core IAM infrastructure is undergoing a re-engineering to replace decades-old, custom-built identity management systems and" /> <meta property="article:published_time" content="2021-09-27T18:56:49-04:00" /> <meta property="article:modified_time" content="2022-05-03T17:45:47-04:00" /> <title>Penn Community Re-Engineering Project | UPenn ISC</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="apple-touch-icon" sizes="57x57" href="/apple-touch-icon-57x57.png"> <link rel="apple-touch-icon" sizes="114x114" href="/apple-touch-icon-114x114.png"> <link rel="apple-touch-icon" sizes="72x72" href="/apple-touch-icon-72x72.png"> <link rel="apple-touch-icon" sizes="144x144" href="/apple-touch-icon-144x144.png"> <link rel="apple-touch-icon" sizes="60x60" href="/apple-touch-icon-60x60.png"> <link rel="apple-touch-icon" sizes="120x120" href="/apple-touch-icon-120x120.png"> <link rel="apple-touch-icon" sizes="76x76" href="/apple-touch-icon-76x76.png"> <link rel="apple-touch-icon" sizes="152x152" href="/apple-touch-icon-152x152.png"> <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon-180x180.png"> <link rel="icon" type="image/png" href="/favicon-192x192.png" sizes="192x192"> <link rel="icon" type="image/png" href="/favicon-160x160.png" sizes="160x160"> <link rel="icon" type="image/png" href="/favicon-96x96.png" sizes="96x96"> <link rel="icon" type="image/png" href="/favicon-16x16.png" sizes="16x16"> <link rel="icon" type="image/png" href="/favicon-32x32.png" sizes="32x32"> <meta name="msapplication-TileColor" content="#0a368f"> <meta name="msapplication-TileImage" content="/mstile-144x144.png"> <style type="text/css" media="all"> @import url("https://www.isc.upenn.edu/modules/system/system.base.css?smurkp"); @import url("https://www.isc.upenn.edu/modules/system/system.menus.css?smurkp"); @import url("https://www.isc.upenn.edu/modules/system/system.messages.css?smurkp"); @import url("https://www.isc.upenn.edu/modules/system/system.theme.css?smurkp"); </style> <style type="text/css" media="all"> @import url("https://www.isc.upenn.edu/sites/all/modules/contrib/calendar/css/calendar_multiday.css?smurkp"); @import url("https://www.isc.upenn.edu/sites/all/modules/contrib/fences/field.css?smurkp"); @import url("https://www.isc.upenn.edu/modules/node/node.css?smurkp"); @import url("https://www.isc.upenn.edu/modules/search/search.css?smurkp"); @import url("https://www.isc.upenn.edu/modules/user/user.css?smurkp"); @import url("https://www.isc.upenn.edu/sites/all/modules/contrib/views/css/views.css?smurkp"); </style> <style type="text/css" media="all"> @import url("https://www.isc.upenn.edu/sites/all/modules/contrib/ctools/css/ctools.css?smurkp"); </style> <style type="text/css" media="all"> @import url("https://www.isc.upenn.edu/sites/all/themes/isc/css/style.css?smurkp"); </style> <!--[if lte IE 9]> <style type="text/css" media="all"> @import url("https://www.isc.upenn.edu/sites/all/themes/isc/css/ie-all.css?smurkp"); </style> <![endif]--> <!--[if lt IE 9]> <style type="text/css" media="all"> @import url("https://www.isc.upenn.edu/sites/all/themes/isc/css/no-mq.css?smurkp"); @import url("https://www.isc.upenn.edu/sites/all/themes/isc/css/ie-8.css?smurkp"); </style> <![endif]--> <!--[if lt IE 9]> <script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/selectivizr/1.0.2/selectivizr-min.js"></script> <![endif]--> </head> <body class="html not-front not-logged-in one-sidebar sidebar-first page-node page-node- page-node-3865 node-type-detail-page" > <div id="skip-link"> <a href="#main-content" class="element-invisible element-focusable">Skip to main content</a> </div> <div class="site-wrapper"> <noscript aria-hidden="true"><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-MRHX4TW" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <header id="header" role="banner"> <div class="header-top"> <div class="contain"> <div class="row"> <div class="col-xs-12 col-md-3 col-lg-4"> <a class="logo-link" href="/"> <img class="logo" src="/sites/all/themes/isc/img/penn-logo.png" srcset="/sites/all/themes/isc/img/penn-logo.png 1x, /sites/all/themes/isc/img/penn-logo@2x.png 2x" alt="Penn Information Systems & Computing Systems Home"> </a> </div> <div class="search-container col-xs-12 col-md-offset-1 col-md-3 col-lg-offset-0 col-lg-3"> <div class="search-container-inner"> <div class="search" role="search"> <form action="/penn-community-re-engineering-project" method="post" id="search-block-form--2" accept-charset="UTF-8"><div> <h2 class="element-invisible">Search form</h2> <label class="element-invisible" for="edit-search-block-form--4">Search ISC ... </label> <input title="Enter the terms you wish to search for." placeholder="Search ISC ..." type="text" id="edit-search-block-form--4" name="search_block_form" value="" size="15" maxlength="128" class="form-text" /> <div class="form-actions form-wrapper" id="edit-actions--3"><input type="submit" id="edit-submit--3" name="op" value="Search" class="form-submit" /></div> <button type="submit" id="edit-submit" class="btn btn-submit form-submit" name="op"><span class="sr-only">Search</span></button> <input type="hidden" name="form_build_id" value="form-MVcn97mRbeZsTHRwikLV80JTBWdQK4cJtb2uG5s064Y" /> <input type="hidden" name="form_id" value="search_block_form" /> </div></form> </div> </div> </div> <div class="links-status-container col-xs-12 col-md-5 col-lg-offset-1 col-lg-4"> <div class="links-status-container-inner"> <a href="https://status.isc.upenn.edu" target="_blank"> <div class="btn-status" id="widget_container"> Getting system status </div> </div> </a> </div> </div> </div> <button id="burger" class="visible-xs visible-sm"> <span class="closed">Menu</span> <span class="open">Close</span> <i class="icon-bars"></i> </button> </div> <div class="header-menu"> <nav class="nav-primary nav" role="navigation" aria-label="Main Navigation"> <div class="menu-wrapper contain-nav"> <ul class="menu list-unstyled"><li class="first expanded menu-depth-1 menu-688 has-submenu"><a href="/get-started" title="Get Started">Get Started</a><button class="menu-toggle" aria-label="Toggle submenu for Get Started"></button><ul class="menu list-unstyled"><li class="first leaf menu-depth-2 menu-691"><a href="/resources/it-staff">IT Staff</a></li> <li class="leaf menu-depth-2 menu-693"><a href="/resources/faculty">Faculty</a></li> <li class="leaf menu-depth-2 menu-692"><a href="/resources/staff">Staff</a></li> <li class="leaf menu-depth-2 menu-694"><a href="/resources/students">Students</a></li> <li class="leaf menu-depth-2 menu-695"><a href="/resources/alumni-guests">Alumni & Guests</a></li> <li class="last leaf menu-depth-2 menu-1485"><a href="https://inside.isc.upenn.edu" title="Resources for ISC Staff">ISC Staff</a></li> </ul></li> <li class="expanded menu-depth-1 menu-687 has-submenu"><a href="/services" title="Services">Services</a><button class="menu-toggle" aria-label="Toggle submenu for Services"></button><ul class="menu list-unstyled"><li class="first leaf menu-depth-2 menu-1138"><a href="/services-z">— Services A to Z —</a></li> <li class="expanded menu-depth-2 menu-1208 has-submenu"><a href="/accounts-access-security">Accounts, Access & Security</a><button class="menu-toggle" aria-label="Toggle submenu for Accounts, Access & Security"></button><ul class="menu list-unstyled"><li class="first leaf menu-depth-3 menu-1523"><a href="/access-management-services" title="Provides authentication and authorization services for all University-wide digital resources">Access Management Services</a></li> <li class="leaf menu-depth-3 menu-1392"><a href="/active-directory" title="Defines and manages authorization and authentication for centralized Microsoft-based applications and services">Active Directory</a></li> <li class="leaf menu-depth-3 menu-1519"><a href="/identity-management-services" title="Provides a wide range of user identity and account offerings for entities accessing Penn’s digital resources">Identity Management Services</a></li> <li class="last leaf menu-depth-3 menu-1517"><a href="/information-security-services" title="Information security consultation, incident management and response, training and awareness, and vulnerability scanning">Information Security Services</a></li> </ul></li> <li class="expanded menu-depth-2 menu-1209 has-submenu"><a href="/applications-data-analytics" title="">Applications & Data Analytics</a><button class="menu-toggle" aria-label="Toggle submenu for Applications & Data Analytics"></button><ul class="menu list-unstyled"><li class="first leaf menu-depth-3 menu-1230"><a href="/enterprise-application-development-delivery" title="Software solutions for widely distributed key business functions/processes">Application Development & Delivery</a></li> <li class="expanded menu-depth-3 menu-1228 has-submenu"><a href="/data-analytics" title="Query tools & analysis of Penn’s administrative information assets">Data Analytics</a><button class="menu-toggle" aria-label="Toggle submenu for Data Analytics"></button><ul class="menu list-unstyled"><li class="first last leaf menu-depth-4 menu-1405"><a href="/data-analytics-penn">Data Analytics at Penn</a></li> </ul></li> <li class="last leaf menu-depth-3 menu-1231"><a href="/integration" title="Sharing of key University processes & data among applications">Integration Development & Delivery</a></li> </ul></li> <li class="expanded menu-depth-2 menu-1210 has-submenu"><a href="/backup-storage-platforms" title="">Backup, Storage & Platforms</a><button class="menu-toggle" aria-label="Toggle submenu for Backup, Storage & Platforms"></button><ul class="menu list-unstyled"><li class="first leaf menu-depth-3 menu-1238"><a href="/backitup" title="Fully-configurable backup for those who manage servers but don't want to maintain backup infrastructure">BackItUp</a></li> <li class="leaf menu-depth-3 menu-1539"><a href="/cloud-solutions" title="Helps IT Service Providers across campus to deploy and run systems in Amazon Web Services (AWS) and on other public cloud providers and assists their faculty and staff in making use of cloud services directly">Cloud Solutions</a></li> <li class="leaf menu-depth-3 menu-1562"><a href="/data-center" title="Provides University constituents a reliable and secure space to house their IT assets.">Data Center & Colocation Solutions</a></li> <li class="leaf menu-depth-3 menu-1501"><a href="/database-application-platform-support-consulting" title="An array of database service offerings that provide maximum flexibility for our clients across the University">Database & Application Platform Support & Consulting</a></li> <li class="leaf menu-depth-3 menu-1394"><a href="/endpoint-management" title="Centralized management of workstations and servers allowing remote installation of applications, patches, and other software fixes">Endpoint Management</a></li> <li class="leaf menu-depth-3 menu-1235"><a href="/recovery-solutions" title="Enabling the protection & recovery of vital infrastructure">Recovery Solutions</a></li> <li class="leaf menu-depth-3 menu-1538"><a href="/storage-0" title="Provides network attached, file level storage to its clients">Storage</a></li> <li class="leaf menu-depth-3 menu-1329"><a href="/virtual-desktop" title="Hosting a desktop operating system within a virtual machine running on a centralized server">Virtual Desktop</a></li> <li class="last leaf menu-depth-3 menu-1236"><a href="/virtual-server-hosting" title="Virtualization for server consolidation & IT resource optimization">Virtual Server Hosting</a></li> </ul></li> <li class="expanded menu-depth-2 menu-1211 has-submenu"><a href="/community-support-learning" title="">Community, Support & Learning</a><button class="menu-toggle" aria-label="Toggle submenu for Community, Support & Learning"></button><ul class="menu list-unstyled"><li class="first leaf menu-depth-3 menu-1243"><a href="/classroom-technology-services" title="AV & other technology for Provost’s central pool classrooms">Classroom Technology Services</a></li> <li class="leaf menu-depth-3 menu-1551"><a href="/desktop-engineering" title="Resources and tools for local IT support providers">Desktop Engineering</a></li> <li class="leaf menu-depth-3 menu-1522"><a href="/it-community-events" title="Collaborative learning events for Penn's IT community">IT Community Events</a></li> <li class="leaf menu-depth-3 menu-1307"><a href="/linkedinlearning" title="Industry leader in online training providing access to hundreds of courses">LinkedIn Learning</a></li> <li class="last leaf menu-depth-3 menu-1241"><a href="/tech-center" title="Computing help for students living off campus, in Greek Houses, Sansom Place East/West">Tech Center</a></li> </ul></li> <li class="expanded menu-depth-2 menu-1212 has-submenu"><a href="/consulting-professional-services" title="">Consulting & Professional Services</a><button class="menu-toggle" aria-label="Toggle submenu for Consulting & Professional Services"></button><ul class="menu list-unstyled"><li class="first leaf menu-depth-3 menu-1499"><a href="/brokered-products" title="Provides Schools and Centers with access to enterprise-level licensing and third-party service contracts.">Brokered Products</a></li> <li class="leaf menu-depth-3 menu-1340"><a href="/hireit" title="Full-time local IT support without adding full-time staff">HireIT</a></li> <li class="leaf menu-depth-3 menu-1332"><a href="/systems-consulting" title="Systems administration consulting with in-depth knowledge of the Penn IT environment">Systems Support & Consulting</a></li> <li class="last leaf menu-depth-3 menu-1500"><a href="/technology-forecasting" title="Working collaboratively with Penn IT partners to identify and evaluate new services, provide technology roadmaps, and to develop recommendations and best practices">Technology Forecasting</a></li> </ul></li> <li class="expanded menu-depth-2 menu-1213 has-submenu"><a href="/email-calendaring-collaboration" title="">Email, Calendaring & Collaboration</a><button class="menu-toggle" aria-label="Toggle submenu for Email, Calendaring & Collaboration"></button><ul class="menu list-unstyled"><li class="first leaf menu-depth-3 menu-1397"><a href="/classlists" title="A class mailing list service for all courses taught in participating schools">Classlists</a></li> <li class="leaf menu-depth-3 menu-1537"><a href="/penn-email-routing" title="Provides a front-end application and back-end infrastructure for routing email to email service providers, such as PennO365, Google Apps and other bespoke email service providers">Penn Email Routing</a></li> <li class="leaf menu-depth-3 menu-1259"><a href="/pennbox" title="Collaboration service for securely storing & sharing data">PennBox</a></li> <li class="leaf menu-depth-3 menu-1343"><a href="/pennnet-mailing-lists" title="A self-managed mailing list application that allows a requestor to setup and maintain subscriptions to an electronic mailing list">PennNet Mailing Lists</a></li> <li class="leaf menu-depth-3 menu-1255"><a href="/penno365-0" title="The University’s cloud-based email & calendaring service available to every School & Center on an opt-in basis">PennO365</a></li> <li class="leaf menu-depth-3 menu-1553"><a href="/pennzoom" title="An enterprise video conferencing tool that provides remote meeting, collaboration capabilities, and classroom instruction for small and large groups">PennZoom</a></li> <li class="leaf menu-depth-3 menu-1390"><a href="/smtp-relay" title="Support for devices like faxes or copy machines to enable their email features">SMTP-Relay</a></li> <li class="last leaf menu-depth-3 menu-1260"><a href="/secure-share" title="Secure exchange of sensitive data files within Penn">Secure Share</a></li> </ul></li> <li class="expanded menu-depth-2 menu-1214 has-submenu"><a href="/networks-connectivity" title="">Networks & Connectivity</a><button class="menu-toggle" aria-label="Toggle submenu for Networks & Connectivity"></button><ul class="menu list-unstyled"><li class="first leaf menu-depth-3 menu-1403"><a href="/firewall-services" title="Automated security tools used to filter out known malicious network traffic and protect server and end user networks">Firewall Services</a></li> <li class="leaf menu-depth-3 menu-1263"><a href="/network-design-installation" title="Industry standard network consultation, design, & installation">Network Design & Installation</a></li> <li class="expanded menu-depth-3 menu-1396 has-submenu"><a href="/pennnet" title="The University’s enterprise data network permitting network access for faculty, staff, and students in all campus buildings and residence halls">PennNet</a><button class="menu-toggle" aria-label="Toggle submenu for PennNet"></button><ul class="menu list-unstyled"><li class="first leaf menu-depth-4 menu-1388"><a href="/network-names-numbers" title="Provides resources under the upenn.edu domain name and in PennNet IP space that enable Penn to exist on the Internet">Network Names & Numbers</a></li> <li class="last leaf menu-depth-4 menu-1262"><a href="/magpi" title="High bandwidth access to Internet2 & 86 partners">MAGPI (Penn's Internet2 Regional Optical Network)</a></li> </ul></li> <li class="leaf menu-depth-3 menu-1265"><a href="/pennnet-ethernet-ports" title="Wired connectivity to resources at Penn & across the world">PennNet Ethernet Ports</a></li> <li class="last leaf menu-depth-3 menu-1261"><a href="/wireless-at-penn" title="The University’s campus-wide Wireless network">Wireless at Penn</a></li> </ul></li> <li class="expanded menu-depth-2 menu-1215 has-submenu"><a href="/phone-tv-video" title="">Phone, TV & Video</a><button class="menu-toggle" aria-label="Toggle submenu for Phone, TV & Video"></button><ul class="menu list-unstyled"><li class="first leaf menu-depth-3 menu-1337"><a href="/contact-center" title="Automated distribution of incoming telephone calls and other types of contacts">Contact Center</a></li> <li class="leaf menu-depth-3 menu-1267"><a href="/live-video-streaming" title="Full-service support for webcasts of live events">Live Video Streaming</a></li> <li class="leaf menu-depth-3 menu-1206"><a href="/penn-video-network" title="Video service streaming television programming and movies to on-campus residence halls, Schools, and Centers.">Penn Video Network</a></li> <li class="leaf menu-depth-3 menu-1549"><a href="/pennflex-phone" title="PennFlex Phone is the University’s cloud-based telephony service supporting business operations for the campus.">PennFlex Phone</a></li> <li class="leaf menu-depth-3 menu-1338"><a href="/traditional-telephony" title="Legacy telephone service provided by our telecommunication carrier’s central office">Traditional Telephony</a></li> <li class="leaf menu-depth-3 menu-1341"><a href="/video-content-management" title="Offers video capture and storage at the user or classroom level integrating with the Canvas platform">Video Content Management</a></li> <li class="last expanded menu-depth-3 menu-1270 has-submenu"><a href="/video-production" title="Provides broadcast-quality editing and recording services to the campus community">Video Production</a><button class="menu-toggle" aria-label="Toggle submenu for Video Production"></button><ul class="menu list-unstyled"><li class="first last leaf menu-depth-4 menu-1410"><a href="/producing-video-content">Producing Video Content</a></li> </ul></li> </ul></li> <li class="expanded menu-depth-2 menu-1216 has-submenu"><a href="/web-development">Web Hosting</a><button class="menu-toggle" aria-label="Toggle submenu for Web Hosting"></button><ul class="menu list-unstyled"><li class="first last leaf menu-depth-3 menu-1272"><a href="/web-services" title="A suite of web hosting service offerings for University clients">Web Hosting Service</a></li> </ul></li> <li class="leaf menu-depth-2 menu-1330"><a href="/service-rates">— Service Rates —</a></li> <li class="last leaf menu-depth-2 menu-1495"><a href="/slas">— Service Level Agreements —</a></li> </ul></li> <li class="expanded menu-depth-1 menu-686 has-submenu"><a href="/security" title="Security">Security</a><button class="menu-toggle" aria-label="Toggle submenu for Security"></button><ul class="menu list-unstyled"><li class="first leaf menu-depth-2 menu-1547"><a href="/security/overview">Office of Information Security</a></li> <li class="leaf menu-depth-2 menu-1469"><a href="/security-services" title="">Security Services</a></li> <li class="leaf menu-depth-2 menu-1470"><a href="/security/projects">Special Projects</a></li> <li class="leaf menu-depth-2 menu-1471"><a href="/information-security-policies-procedures">Policies & Procedures</a></li> <li class="leaf menu-depth-2 menu-1472"><a href="/security/aware">Training & Awareness</a></li> <li class="last leaf menu-depth-2 menu-1631"><a href="/penn-secureit-program">Penn SecureIT program</a></li> </ul></li> <li class="expanded menu-depth-1 menu-684 has-submenu"><a href="/collaborations" title="Collaborations">Collaborations</a><button class="menu-toggle" aria-label="Toggle submenu for Collaborations"></button><ul class="menu list-unstyled"><li class="first leaf menu-depth-2 menu-1556"><a href="https://www.isc.upenn.edu/computing-policies" title="">Computing Policies</a></li> <li class="leaf menu-depth-2 menu-1521"><a href="/collaborations/engaging-penn%E2%80%99s-it-community">Engaging Penn’s IT Community</a></li> <li class="leaf menu-depth-2 menu-1511"><a href="/collaborations/identity-access-management">Identity & Access Management</a></li> <li class="leaf menu-depth-2 menu-1589"><a href="/collaborations/penn-it-strategic-plan">Penn IT Strategic Plan</a></li> <li class="leaf menu-depth-2 menu-1432"><a href="/collaborations/cloud-first">Cloud First</a></li> <li class="leaf menu-depth-2 menu-1520"><a href="/collaborations/next-generation-unified-communications">Next Generation Unified Communications</a></li> <li class="leaf menu-depth-2 menu-1590"><a href="/collaborations/penn-bot">Penn Bot</a></li> <li class="expanded menu-depth-2 menu-1434 has-submenu"><a href="/collaborations/it-advisory-groups">IT Advisory Groups</a><button class="menu-toggle" aria-label="Toggle submenu for IT Advisory Groups"></button><ul class="menu list-unstyled"><li class="first leaf menu-depth-3 menu-1436"><a href="/collaborations/common-solutions">Common Solutions</a></li> <li class="leaf menu-depth-3 menu-1435"><a href="/collaborations/it-roundtable">IT Roundtable</a></li> <li class="leaf menu-depth-3 menu-1438"><a href="/collaborations/network-policy-committee">Network Policy Committee</a></li> <li class="last expanded menu-depth-3 menu-1524 has-submenu"><a href="/collaborations/penn-technology-investment-committee" title="">Penn Technology Investment Committee (PTIC)</a><button class="menu-toggle" aria-label="Toggle submenu for Penn Technology Investment Committee (PTIC)"></button><ul class="menu list-unstyled"><li class="first leaf menu-depth-4 menu-1534"><a href="/about-penn-technology-investment-committee">About PTIC</a></li> <li class="last collapsed menu-depth-4 menu-1555"><a href="/ptic-it-development-fund">The PTIC IT Development Fund</a></li> </ul></li> </ul></li> <li class="expanded menu-depth-2 menu-1439 has-submenu"><a href="/collaborations/special-interest-groups-sigs">Special Interest Groups (SIGs)</a><button class="menu-toggle" aria-label="Toggle submenu for Special Interest Groups (SIGs)"></button><ul class="menu list-unstyled"><li class="first leaf menu-depth-3 menu-1446"><a href="/collaborations/audio-visual-special-interest-group">Audio-Visual (AV-SIG)</a></li> <li class="leaf menu-depth-3 menu-1442"><a href="/collaborations/cloud-computing-special-interest-group">Cloud Computing (Cloud-SIG)</a></li> <li class="leaf menu-depth-3 menu-1474"><a href="/collaborations/data-visualization-special-interest-group">Data Visualization (DataViz-SIG)</a></li> <li class="leaf menu-depth-3 menu-1443"><a href="/collaborations/developer-special-interest-group">Developer SIG (Dev-SIG)</a></li> <li class="leaf menu-depth-3 menu-1450"><a href="/collaborations/high-performance-computing-special-interest-group">High-Performance Computing (HPC-SIG)</a></li> <li class="leaf menu-depth-3 menu-1449"><a href="/collaborations/instructional-technology-special-interest-group">Instructional Technology SIG</a></li> <li class="leaf menu-depth-3 menu-1451"><a href="/collaborations/linux-special-interest-group">Linux SIG</a></li> <li class="leaf menu-depth-3 menu-1448"><a href="/collaborations/macintosh-networking-group">Macintosh Networking Group (MacNet)</a></li> <li class="leaf menu-depth-3 menu-1445"><a href="/collaborations/mobile-technologies-special-interest-group">Mobile Technologies (Mobile-SIG)</a></li> <li class="leaf menu-depth-3 menu-1453"><a href="/collaborations/o365-special-interest-group">O365 Special Interest Group</a></li> <li class="leaf menu-depth-3 menu-1447"><a href="/collaborations/pc-networking-group">PC Networking Group (PC-Net)</a></li> <li class="leaf menu-depth-3 menu-1440"><a href="/collaborations/project-partners-special-interest-group">Project Partners SIG</a></li> <li class="leaf menu-depth-3 menu-1456"><a href="/collaborations/security-special-interest-group">Security SIG</a></li> <li class="leaf menu-depth-3 menu-1441"><a href="/collaborations/social-media-special-interest-group">Social Media SIG</a></li> <li class="leaf menu-depth-3 menu-1484"><a href="/collaborations/splunk-special-interest-group">Splunk Special Interest Group</a></li> <li class="leaf menu-depth-3 menu-1444"><a href="/collaborations/super-user-group">Super User Group (SUG)</a></li> <li class="last leaf menu-depth-3 menu-1452"><a href="/collaborations/web-developers-special-interest-group">Web SIG</a></li> </ul></li> <li class="last leaf menu-depth-2 menu-1512"><a href="/collaborations/technology-services-strategy-review-board">Technology Services Strategy Review Board</a></li> </ul></li> <li class="leaf menu-depth-1 menu-681"><a href="/news" title="News">News</a></li> <li class="leaf menu-depth-1 menu-685"><a href="/events" title="Events">Events</a></li> <li class="expanded menu-depth-1 menu-683 has-submenu"><a href="/about" title="About">About</a><button class="menu-toggle" aria-label="Toggle submenu for About"></button><ul class="menu list-unstyled"><li class="first leaf menu-depth-2 menu-700"><a href="/overview">Overview</a></li> <li class="collapsed menu-depth-2 menu-699"><a href="/leadership-groups">Leadership & Groups</a></li> <li class="leaf menu-depth-2 menu-1105"><a href="/isc-purpose-values">Purpose & Values</a></li> <li class="leaf menu-depth-2 menu-1546"><a href="/isc-strategic-goals">Strategic Goals</a></li> <li class="leaf menu-depth-2 menu-897"><a href="/isc%E2%80%99s-key-program-employee-recognition">Recognition</a></li> <li class="collapsed menu-depth-2 menu-1564"><a href="/staff-profiles">Staff Profiles</a></li> <li class="leaf menu-depth-2 menu-943"><a href="/tech-jobs-penn">Tech Jobs @ Penn</a></li> <li class="last leaf menu-depth-2 menu-903"><a href="/contact-us">Contact Us</a></li> </ul></li> <li class="collapsed menu-depth-1 menu-844"><a href="/hot-topics">Hot Topics</a></li> <li class="last expanded menu-depth-1 menu-682 has-submenu"><a href="/get-it-help" title="Get IT Help">Get IT Help</a><button class="menu-toggle" aria-label="Toggle submenu for Get IT Help"></button><ul class="menu list-unstyled"><li class="first leaf menu-depth-2 menu-1595"><a href="/student-support-directory">Help for Students</a></li> <li class="leaf menu-depth-2 menu-1596"><a href="/facultystaff-support-directory">Help for Faculty & Staff</a></li> <li class="leaf menu-depth-2 menu-1597"><a href="/alumni-support-directory" title="">Help for Alumni</a></li> <li class="leaf menu-depth-2 menu-1598"><a href="/guest-support-directory" title="">Help for Guests & Others</a></li> <li class="last leaf menu-depth-2 menu-1599"><a href="/clientcare">Resources for IT Staff</a></li> </ul></li> </ul> </div> </nav> <div class="mobile-secondary-menu"></div> </div> </header> <div class="view view-status-bar view-id-status_bar view-display-id-default view-dom-id-1d816cb786b1f5f78d234e60e24609c1"> </div> <main id="main-content" class="main" role="main"> <div class="contain"> <div class="tabs"></div> <div class="page-wrapper row"> <div id="breadcrumb"><h2 class="element-invisible">You are here</h2><div class="breadcrumb"><a href="/homepage">Home</a> » <span class="crumbs-current-page">Penn Community Re-Engineering Project</span></div></div> <div class="page col-xs-12 "> <div class="region region-content"> <div id="block-system-main" class="block block-system"> <div class="content"> <div class="featured-banner"> <picture> <!--[if IE 9]><video style="display: none;"><![endif]--> <source srcset="https://www.isc.upenn.edu/sites/default/files/styles/banner/public/iam-ben3.jpg?itok=ALmChGWc 1x, https://www.isc.upenn.edu/sites/default/files/styles/banner_2x/public/iam-ben3.jpg?itok=jylJ9FSo 2x" media="(min-width: 431px)"> <!--[if IE 9]></video><![endif]--> <!--[if lt IE 9]> <img src="https://www.isc.upenn.edu/sites/default/files/styles/banner_2x/public/iam-ben3.jpg?itok=jylJ9FSo" alt=""> <![endif]--> <!--[if !lt IE 9]><!--> <img srcset="https://www.isc.upenn.edu/sites/default/files/styles/banner/public/iam-ben3.jpg?itok=ALmChGWc" alt=""> <!--<![endif]--> </picture> </div> <article id="node-3865" class="node node-detail-page"> <header class="row"> <div class="col-xs-12 has-related col-lg-9"> <h1 class="page-title">Penn Community Re-Engineering Project</h1> </div> </header> <div class="row"> <div class="page-content detail-page-content col-xs-12 has-related col-lg-9"> <div class="wysiwyg"> <p>As part of <a href="https://www.isc.upenn.edu/iam">Penn’s Identity & Access Management (IAM) program</a>, Penn’s core IAM infrastructure is undergoing a re-engineering to replace decades-old, custom-built identity management systems and processes with a standards-based, modern solution to strengthen Penn’s overall security posture and ability to comply with emerging global regulatory requirements. The new Penn Community (with SailPoint IIQ as the underlying identity engine) will be implemented in phases (see <a href="/sites/default/files/iam-timeline.pdf" target="_blank">Timeline</a>).</p> <h2>Who’s Affected</h2> <p>As this project is infrastructure-based, there will be minimal disruption for existing PennKey holders – users will continue to access their Penn resources as before when the re-engineering is complete. The audiences affected by the project are source data owners (identity source systems), target system owners (consumers of Penn Community data), and ISC IAM-related service owners. The IAM project team will collaborate with representatives from these groups through all phases of the project (see <a href="/sites/default/files/iam-audiences.pdf" target="_blank">Stakeholders and Project Participants</a>).</p> <div class="accordion snippet"> <div class="accordion-group"> <div class="accordion-title"><a class="accordion-toggle" href="javascript:;"><strong>Phase 1 Rollout – November 12-15, 2021</strong></a></div> <div class="accordion-def collapse"> <div class="accordion-content wysiwyg"> <p>Phase 1 rollout was completed November 12-15, 2021 and included the implementation of SailPoint Identity IQ (IIQ) as the underlying identity engine for Penn Community. The affected audience was limited to Penn Community administrators and University personnel supporting identity conflict resolution (approximately 10 staff; Admissions, Alumni, HR, etc.). The new solution runs on a Penn-dedicated infrastructure hosted by Amazon Web Services (AWS), providing a flexible architecture that can grow with the University. Phase 1 rollout included the following:</p> <ul> <li>The new Penn Community (powered by SailPoint IIQ) populated with source/historical data</li> <li>PennIDs created by the new Penn Community</li> <li>Legacy Penn Community became a consumer of the new Penn Community powered by SailPoint IIQ; legacy Penn Community remains in place during migration of consumers; no “big bang” transition</li> <li>Persistent Bulk Load user access was deactivated; as of November 15, 2021, the Penn Community support team is handling persistent bulk requests until the new, improved service is available on the new SailPoint IIQ platform (mid-2022)</li> </ul> <p>More details are available on the <a href="https://www.isc.upenn.edu/penn-community-details#New-PCOM" target="_blank">Penn Community website</a>.</p> <p><strong>Post-Live Support</strong> </p><ul> <li>Issues can be submitted through ISC’s Client Care (<a href="mailto:help@isc.upenn.edu">help@isc.upenn.edu</a>)</li></ul></div> </div> </div> <div class="accordion-group"> <div class="accordion-title"><a class="accordion-toggle" href="javascript:;"><strong>Phase 2 Rollout – 2022-2023</strong></a></div> <div class="accordion-def collapse"> <div class="accordion-content wysiwyg"> <p>In Phase 2 (2022-2023), we will leverage our new identity management system’s capabilities to improve the security and efficiency of University-wide identity and access management processes in phased functional releases. Goals include:</p> <ul> <li>Implementing future-state design for identity management</li> <li>Deploying infrastructure to support future access management capabilities</li> <li>Legacy Penn Community retirement (longer-term goal)</li> </ul> <p>Phase 2 includes improvements in the following areas:</p> <ul> <li>User Experience <ul> <li>Dramatic improvements for new PennKey creation and password resets</li> <li>Replacement of custom-built user registration and maintenance pages with vendor products</li> </ul> </li> <li>Security <ul> <li>Two-Step Verification overhaul – direct integration with Duo Services, retirement of custom Penn middleware/layers</li> <li>Tighter controls on registration</li> <li>Ability to rapidly adopt emerging authentication technologies to keep pace with evolving security challenges</li> <li>Improved UI and functionality for PennKey administrators</li> <li>Continued prototyping of “passwordless”/FIDO2-based authentication</li> </ul> </li> <li>Efficiency <ul> <li>Continued improvements in the delivery of cleaner identity data across Penn systems</li> <li>Lower effort for future enterprise software integrations</li> <li>Adaptive rules and controls for entering and managing identity data</li> <li>Robust auditing and logging of all identity transactions</li> </ul> </li> </ul> <p>Areas of new functionality will include:</p> <ul> <li>Auditing and reporting of identity updates and security events</li> <li>Phased integrations with key, business-critical University systems to provide automated, rules-based provisioning and de-provisioning of user accounts and access privileges</li></ul></div> </div> </div> </div> <h2>Benefits</h2> <p>Following are the benefits of the project:</p> <ul> <li>Enhance security by assigning privileges automatically based on known user identity data and predefined rules</li> <li>Provide an audit trail for – and periodic recertification of – user access rights to ensure users have the correct privileges and to explain how and why they receive them</li> <li>Provide significant user experience improvements and an accelerated onboarding process</li> <li>Streamline request-approval processes and automate account de-provisioning</li> <li>Speed application development with modern identity and access APIs and tools</li> <li>Integrate with on-premises or cloud-hosted applications and/or frameworks to provide real-time provisioning and de-provisioning of user accounts and identity data to partners inside and outside of Penn</li> </ul> </div> <div class="share-links"> <p><a href="https://www.linkedin.com/company/penn-information-systems-computing/" title="Visit ISC on LinkedIn"><em>Visit ISC on LinkedIn</em></a></p> <ul class="list-unstyled"> <!-- <li><a class="linkedin" <span class="element-invisible">Visit ISC on LinkedIn</span><i class="icon-linkedin"></i></a></li> --> <!-- <li><a class="facebook" href="https://www.facebook.com/sharer/sharer.php" title="Facebook" share-link><span class="element-invisible">Facebook</span><i class="icon-facebook-circle"></i></a></li> --> <!-- <li><a class="twitter" href="https://twitter.com/share" title="Twitter" share-link><span class="element-invisible">Twitter</span><i class="icon-twitter-circle"></i></a></li> --> <!-- <li><a class="google-plus" href="https://plus.google.com/share" title="Google Plus" share-link><span class="sr-only">Google+</span><i class="icon-google-plus-circle"></i></a></li> --> </ul> <a href="javascript:window.print()" class="btn btn-primary btn-print">Print</a> </div> </div> <div class="right-sidebar-snippets col-xs-12 col-lg-3"> <aside class="related-content related-content-sidebar"> <div class="row"> <div class="right-sidebar-snippet"> <a class="btn btn-primary btn-with-icon btn-with-icon--arrow" href="iam" > IAM Home</a> </div> <div class="right-sidebar-snippet"> <span class="h5"> IAM Projects</span> <div class="field-body"> <ul> <li><a href="https://www.isc.upenn.edu/front-door-authorization">Front Door Authorization</a></li> <li><a href="https://www.isc.upenn.edu/duo-universal-prompt-project">Duo Universal Prompt</a></li> <li><a href="https://www.isc.upenn.edu/pennkey-login-ui-refresh-project">PennKey Login UI Refresh</a></li> <li><a href="https://www.isc.upenn.edu/pennkey-support-application-project">PennKey Support Application</a></li> <li><a href="http://www.isc.upenn.edu/enhanced-client-or-proxy-ecp-project">Enhanced Client or Proxy (ECP)</a></li> <li><a href="/pennkey-self-service-password-reset-sspr-project">PennKey Self-Service Password Reset (SSPR)</a></li> <li><a href="/manual-entry" target="_blank">Manual Entry</a></li> <li><a href="/penn-community-re-engineering-project">Penn Community Re-Engineering</a></li> <li><a href="/pennpath" target="_blank">PennPath (Consumer IAM)</a></li> </ul> </div> </div> <div class="right-sidebar-snippet"> <span class="h5"> Related Initiatives</span> <div class="field-body"> <ul> <li><a href="/how-to/two-step-faq" target="_blank">Two-Step Verification</a></li> <li><a href="https://www.isc.upenn.edu/active-directory-iam">Active Directory & IAM</a></li> </ul> </div> </div> <div class="right-sidebar-snippet"> <span class="h5"> Updates</span> <div class="field-body"> <ul> <li><a href="https://t.e2ma.net/webview/pcbnlg/e34009f44bcb50825b5561719e2d111f" target="_blank">Current Update</a></li> <li><a href="/iam-archive">Archive</a></li> </ul> </div> </div> <div class="right-sidebar-snippet"> <span class="h5"> Resources</span> <div class="field-body"> <ul> <li><a href="/sites/default/files/iam-program-at-a-glance.pdf" target="_blank">IAM Program at a Glance</a></li> <li><a href="/sites/default/files/iam-timeline.pdf" target="_blank">IAM Timeline</a></li> <li><a href="/general-iam-resources">General IAM Resources</a></li> <li><a href="/penn-iam-resources">Penn IAM Resources</a></li> <li><a href="https://www.isc.upenn.edu/penn-community-details" target="_blank">Penn Community Website</a></li> </ul> </div> </div> </div> </aside> </div> </div> </article> </div> </div> </div> </div> </div> </div> </main> <footer id="footer"> <nav class="nav-footer nav" role="navigation" aria-label="Footer Navigation"> <div class="contain"> <ul class="list-unstyled menu"><li class="menu-881 first"><a href="/computing-policies" title="">Computing Policies</a></li> <li class="menu-882 last"><a href="/tech-jobs-penn" title="">Tech Jobs @ Penn</a></li> </ul> </div> </nav> <div class="contain"> <div class="footer-bottom"> <div class="copyright"> <p>© 2024 <span class="footer-text"><a href="https://www.upenn.edu" target="_blank">THE UNIVERSITY OF PENNSYLVANIA</a> — 3401 Walnut Street, Philadelphia, PA 19104 — <a href="https://accessibility.web-resources.upenn.edu/get-help" target="_blank">Report accessibility issues and get help</a> — <a href="https://inside.isc.upenn.edu">For ISC Staff</a> </span> </div> </div> </div> </footer> <div id="js-mediaquery-reference"></div> </div> <script type="text/javascript" src="https://www.isc.upenn.edu/sites/default/files/js/js_TR0pwpfHlQPkY_Jh_YCAVN7-6fxl20UAV_NzzH26Vjc.js"></script> <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> <script type="text/javascript"> <!--//--><![CDATA[//><!-- window.jQuery || document.write("<script src='/sites/all/modules/contrib/jquery_update/replace/jquery/1.12/jquery.min.js'>\x3C/script>") //--><!]]> </script> <script type="text/javascript" src="https://www.isc.upenn.edu/sites/default/files/js/js_GOikDsJOX04Aww72M-XK1hkq4qiL_1XgGsRdkL0XlDo.js"></script> <script type="text/javascript" src="https://www.isc.upenn.edu/sites/default/files/js/js_onbE0n0cQY6KTDQtHO_E27UBymFC-RuqypZZ6Zxez-o.js"></script> <script type="text/javascript" src="https://www.isc.upenn.edu/sites/default/files/js/js_gHk2gWJ_Qw_jU2qRiUmSl7d8oly1Cx7lQFrqcp3RXcI.js"></script> <script type="text/javascript" src="https://www.isc.upenn.edu/sites/default/files/js/js_pg96CjTcyquqD1DeLC850SvedCqjfz7Sd5ySd2a47IY.js"></script> <script type="text/javascript"> <!--//--><![CDATA[//><!-- jQuery.extend(Drupal.settings, {"basePath":"\/","pathPrefix":"","setHasJsCookie":0,"ajaxPageState":{"theme":"isc","theme_token":"SjkfZoeeCgmWvZgIll9Uk-oQXHvxF-g1ff7gLLZIF40","js":{"https:\/\/www.isc.upenn.edu\/sites\/default\/files\/google_tag\/isc_website\/google_tag.script.js":1,"\/\/ajax.googleapis.com\/ajax\/libs\/jquery\/1.12.4\/jquery.min.js":1,"0":1,"misc\/jquery-extend-3.4.0.js":1,"misc\/jquery-html-prefilter-3.5.0-backport.js":1,"misc\/jquery.once.js":1,"misc\/drupal.js":1,"sites\/all\/modules\/contrib\/jquery_update\/js\/jquery_browser.js":1,"misc\/form-single-submit.js":1,"sites\/all\/modules\/contrib\/entityreference\/js\/entityreference.js":1,"sites\/all\/themes\/isc\/js\/functionality.min.js":1,"sites\/all\/themes\/isc\/js\/plugins.min.js":1},"css":{"modules\/system\/system.base.css":1,"modules\/system\/system.menus.css":1,"modules\/system\/system.messages.css":1,"modules\/system\/system.theme.css":1,"sites\/all\/modules\/contrib\/calendar\/css\/calendar_multiday.css":1,"modules\/field\/theme\/field.css":1,"modules\/node\/node.css":1,"modules\/search\/search.css":1,"modules\/user\/user.css":1,"sites\/all\/modules\/contrib\/views\/css\/views.css":1,"sites\/all\/modules\/contrib\/ctools\/css\/ctools.css":1,"sites\/all\/themes\/isc\/css\/style.css":1,"sites\/all\/themes\/isc\/css\/ie-all.css":1,"sites\/all\/themes\/isc\/css\/no-mq.css":1,"sites\/all\/themes\/isc\/css\/ie-8.css":1}},"urlIsAjaxTrusted":{"\/penn-community-re-engineering-project":true},"better_exposed_filters":{"views":{"status_bar":{"displays":{"default":{"filters":[]}}}}}}); //--><!]]> </script> <!--[if lt IE 9]> <script src="/sites/all/themes/isc/js/ie.js"></script> <![endif]--> <script src="https://cdn.statushub.io/apps/widget-compact/v1/widget.js"></script> <script> STATUSHUB.widget({ targetElement: "#widget_container", accessToken: "e35fa83665bf292ce02422f4f8028f309984c726", view: "all" }); </script> </script> <script type="text/javascript"> setTimeout(function(){var a=document.createElement("script"); var b=document.getElementsByTagName("script")[0]; a.src=document.location.protocol+"//script.crazyegg.com/pages/scripts/0042/7693.js?"+Math.floor(new Date().getTime()/3600000); a.async=true;a.type="text/javascript";b.parentNode.insertBefore(a,b)}, 1); </script> <script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js"></script> <script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"91e11a190c","applicationID":"4961301","transactionName":"ZlcGY0QFWUAFUkdaDV8dMUVfSxhaClVWS0xBWhQ=","queueTime":0,"applicationTime":269,"atts":"ShAFFQwfSk4=","errorBeacon":"bam.nr-data.net","agent":""}</script></body> </html>