SlideShare una empresa de Scribd logo
1 de 42
Descargar para leer sin conexión
FHO Fachhochschule Ostschweiz
EduID Mobile App
Use-cases, Concepts, Implementation
@phish108 @htwblc
Part I
Use Cases and Concepts
The “Cloud” from a Service Perspective
Clients
@phish108 @htwblc
The “Cloud” from a Device Perspective
Roaming
Profiles
@phish108 @htwblc
The “Cloud” from a User Perspective
Smart
Environments
@phish108 @htwblc
Shifting from Feature Services to Smart Environments
Glahn (2013). What we mean when we talk about mobile services. SIG Mobile Whitepaper @phish108 @htwblc
Personalization requires Authorization
Seite 6
Authorization is about Trust
Organization
Trusted
User &
App Store
Trusted
Mobile DeviceService Federation
Untrusted
Personal Data
Internet
@phish108 @htwblc
1. OIDC for Responsive Web-Apps
2. AppAuth for tightly integrated native mobile apps
3. Token Agent Authorization for loosely coupled native apps
@phish108 @htwblc
3 Approaches
Approach 1: Responsive Web-Apps
(OpenID Connect / OAuth2, SAML)
@phish108 @htwblc
Open ID Connect: 3 Flows to Authorizations
@phish108 @htwblc
1. Implicit flow
• Get an authorization from an IDP for accessing a service with limited
session details
2. Code flow
• Receive an authorization code for fetching confidential session details
from the IDP
3. Hybrid flow
• Get an authorization from an IDP for accessing a service with
confidential session details in one step
OpenID Connect (OIDC)
26.04.2017Corporate IT, FHNW 11
«A Simple Identity layer on top of OAuth 2.0»
From the website (http://openid.net):
− OIDC is an interoperable authentication protocol based on the OAuth 2.0 family of
specifications. It uses straightforward REST/JSON message flows with a design goal of
«making simple things simple and complicated things possible». It’s uniquely easy for
developers to integrate, compared to any preceding Identity protocol.
− OIDC allows for clients of all types, including browser-based JavaScript and native
mobile apps, to launch sign-in flows and receive verifiable assertions about the identity
of signed-in users.
SAML vs OIDC vs OAuth
26.04.2017Corporate IT, FHNW 12
Simply said:
− SAML: single sign-on for enterprise users
− OAuth: API authorization between applications
− OIDC: single sign-on for consumers + API access
Token format:
− SAML: XML
− OIDC: JWT (JSON web token)
The whole story:
«Unifying Authentication & Delegated API Access for Mobile, Web and the Desktop with
OpenID Connect and OAuth2 by Dominick Baier»
https://vimeo.com/113604459
GET /authorize
?client_id=app1
&scope=openid profile
&redirect_uri=https://app.com/cb
&response_type=id_token token
&state=af0ifjsldkj
&nonce=n-0S6_WzA2Mj
Implicit Flow
26.04.2017Corporate IT, FHNW 13
− One of multiple flows (processes) defined in the specification
− Specifically designed for «untrusted clients» such as JavaScript apps
− Key steps:
− Client sends the request to the Authorization Server.
− Authorization Server authenticates the End-User, obtains consent, sends him/her back to the Client with an
ID Token and, if requested, an Access (Bearer) Token.
− Client validates the tokens and retrieves the End-User's Subject Identifier.
− Client uses the Access Token for calls to Backend Web Services
@phish108 @htwblc
Approach 2: Integrated Service Apps
or Service-bound Apps
(AppAuth)
© 2017 SWITCH | 15
Startseite Untertitel
Unternehmenspräsentation
Christoph Graf, Rolf Brugger
swisseduid@switch.ch
SIG Mobile, 25.4.2017 @SWITCH
Use case of a “Service-bound Mobile App”
SWITCHdrive App
SWITCHdrive
Sync & share on Swiss servers
Keep your data on your devices synchronized and share them
with your contacts – on secure safe servers
Your benefits
• Data in Switzerland
• Fast network connection to SWITCH
• Simple user activation
Customers
• Universities
• Hospitals
• Other institutions
Services
• SWITCHdrive- Serverfarm, based on
ownCloud
• High dissemination in academic
Switzerland (>80% of universities)
SWITCHdrive App –
The official mobile client
of the SWITCHdrive service
• SWITCH-branded, based on owncloud app
• Preconfigured with fixed endpoints for SWITCHdrive
• Feature set in line with SWITCHdrive capabilities
• Support limited to this app
Usage scenario description
• Controlling the user experience end-to-end
• Service branding opportunity (CI/CD)
• Needs to maintain an app
(development/adaptation/preconfiguration/testing,
mobile martketplaces, etc.)
• One single app to document and support
• No re-use opportunity of potentially compatible app
Service operator perspective
• Opportunity to develop, adapt, brand, preconfigure or
support app exclusively for specific services as a
contractor to service operator
• (Probably) no opportunity to offer alternatives to users
bypassing service operator
• Uses standard authentication mechanisms (AppAuth,
OAuth2, OIDC): availability of libraries, development
and testing tools, tutorials.
App developer perspective
www.switch.ch/30years
SWITCH – an integral part of the Swiss
academic community since 1987.
@phish108 @htwblc
Approach 3: EduID Mobile App
(Token-agent assertions)
• Multi-LMS learning app
• API dependent, not service dependent
• No separate backend service
• Entering and managing authorizations cumbersome
• Major UX barrier
• Specialized solution for some didactics
@phish108 @htwblc
The Story of Mobler
@phish108 @htwblc
How relevant are these cases for
your institution?
@phish108 @htwblc
Part II
EduID Mobile App Architecture
@phish108 @htwblc
EduID Mobile App Reference Architecture
1
234
5
• Focus on business logic
• Completely external SSO
• Federation independence
• Loose bounds with specific services and instances
• Independence of specific authorization mechanics
• Multi factor authorization
• Service-level authorization
• Customers binding
@phish108 @htwblc
Benefits for Developers
• Continuous but flexible authorization and access control
• Apps will not see forbidden service endpoints
• Apps will not know authorization endpoints
• Easier adoption of apps
• No immediate need for app customizations
@phish108 @htwblc
Benefits for Organizations
• One stop authorization and identity management
• No need to enter URLs in apps.
• No need to enter passwords all the time
• Transparent and explicit authorization of services
@phish108 @htwblc
Benefits for Actors
Requirements
• Minimum Changes compared to OpenID Connect implementations
• No Interference with existing OpenID Connect and AppAuth
• Only standardized concepts (RFC-level)
@phish108 @htwblc
Implementation Requirements
for Service Providers
Solution
• Variation of OAuth2/OpenID Connect Code Flow
• Trust-agent initiates the code request phase, directly
• No separate authorization step
• All request parameters are forwarded to the OAuth2 endpoints
• Service extends code request with the required OAuth2 scope
@phish108 @htwblc
Implementation Requirements
for Service Providers
@phish108 @htwblc
PHP-CodefromtheMoodleImplementation
if (array_key_exists("id", $_GET)) {
// Step 1: Code-flow, Hybrid-Flow
// normal use when the user comes via the login page
// triggers the authorization request
$callback->handleAuthorization();
}
elseif (array_key_exists("state", $_GET)) {
// Step 2: Code-flow, Hybrid-Flow
// response from the authorization endpoint
$callback->authorizeUser();
}
elseif (array_key_exists("assertion", $_GET)) {
// EduID Extension: rfc7521 forwarding
$callback->authorizeAssertion();
}
else {
// bad request or OAuth2 error
http_response_code(403);
exit;
}
public function authorizeAssertion() {
// rfc7521 forwarding: extend the incoming assertion parameters
$param = array_merge($_GET, ["scope"=> "openid profile email"]);
// Fetch the access-token and user–information
// - this is the same call as in step 2 of the Code Flow
$res = $this->callTokenEndpoint($param);
if (!$this->handleToken($res)) {
http_response_code(403);
}
}
@phish108 @htwblc
PHP-CodefromtheMoodleImplementation
Reduction of Business Logic
• Authorization request via mobile-OS instead of self-authorization
• Self-identification
• Service or service-capability demands
• Single or multi-endpoint handling
• Endpoint and token management (as usual)
@phish108 @htwblc
Implementation Requirements
for App Developers
App Authorization
for Service
Further reading http://htw.ac/eduid-mobile
@htwblc
http://htw.ac/blc-blog
FHO Fachhochschule Ostschweiz

Más contenido relacionado

La actualidad más candente

Technical Case Study: McKesson - Employing the Open Identity Stack
Technical Case Study: McKesson - Employing the Open Identity StackTechnical Case Study: McKesson - Employing the Open Identity Stack
Technical Case Study: McKesson - Employing the Open Identity StackForgeRock
 
Integrating Healthcare Applications with EMR Systems and Databases and Transf...
Integrating Healthcare Applications with EMR Systems and Databases and Transf...Integrating Healthcare Applications with EMR Systems and Databases and Transf...
Integrating Healthcare Applications with EMR Systems and Databases and Transf...WSO2
 
Connected Finance Reference Architecture
Connected Finance Reference ArchitectureConnected Finance Reference Architecture
Connected Finance Reference ArchitectureWSO2
 
Customer Scale: Stateless Sessions and Managing High-Volume Digital Services
Customer Scale: Stateless Sessions and Managing High-Volume Digital ServicesCustomer Scale: Stateless Sessions and Managing High-Volume Digital Services
Customer Scale: Stateless Sessions and Managing High-Volume Digital ServicesForgeRock
 
Webinar: Consent 2.0: Applying User-Managed Access to the Privacy Challenge
Webinar: Consent 2.0: Applying User-Managed Access to the Privacy ChallengeWebinar: Consent 2.0: Applying User-Managed Access to the Privacy Challenge
Webinar: Consent 2.0: Applying User-Managed Access to the Privacy ChallengeForgeRock
 
Incredible Edible Identity
Incredible Edible IdentityIncredible Edible Identity
Incredible Edible IdentityForgeRock
 
Trust Elevation: Implementing an OAuth2 Infrastructure using OpenID Connect &...
Trust Elevation: Implementing an OAuth2 Infrastructure using OpenID Connect &...Trust Elevation: Implementing an OAuth2 Infrastructure using OpenID Connect &...
Trust Elevation: Implementing an OAuth2 Infrastructure using OpenID Connect &...Mike Schwartz
 
apidays LIVE London 2021 - Securing PII at runtime by Rob Dickinson, Resurfac...
apidays LIVE London 2021 - Securing PII at runtime by Rob Dickinson, Resurfac...apidays LIVE London 2021 - Securing PII at runtime by Rob Dickinson, Resurfac...
apidays LIVE London 2021 - Securing PII at runtime by Rob Dickinson, Resurfac...apidays
 
Provisioning IoT...Oh Baby You Know Meeee!
Provisioning IoT...Oh Baby You Know Meeee!Provisioning IoT...Oh Baby You Know Meeee!
Provisioning IoT...Oh Baby You Know Meeee!ForgeRock
 
Consumerizing Industrial IoT Access Control: Using UMA to Add Privacy and Usa...
Consumerizing Industrial IoT Access Control: Using UMA to Add Privacy and Usa...Consumerizing Industrial IoT Access Control: Using UMA to Add Privacy and Usa...
Consumerizing Industrial IoT Access Control: Using UMA to Add Privacy and Usa...Eve Maler
 
FIWARE Overview of Generic Enablers
FIWARE Overview of Generic EnablersFIWARE Overview of Generic Enablers
FIWARE Overview of Generic EnablersMiguel González
 
apidays LIVE Australia 2021 - Levelling up database security by thinking in A...
apidays LIVE Australia 2021 - Levelling up database security by thinking in A...apidays LIVE Australia 2021 - Levelling up database security by thinking in A...
apidays LIVE Australia 2021 - Levelling up database security by thinking in A...apidays
 
The New Venn of Access Control in the API-Mobile-IOT Era
The New Venn of Access Control in the API-Mobile-IOT EraThe New Venn of Access Control in the API-Mobile-IOT Era
The New Venn of Access Control in the API-Mobile-IOT EraForgeRock
 
[WSO2Con EU 2018] Identity APIs is the New Black
[WSO2Con EU 2018] Identity APIs is the New Black[WSO2Con EU 2018] Identity APIs is the New Black
[WSO2Con EU 2018] Identity APIs is the New BlackWSO2
 
A whistlestop tour of FHIR API authentication and authorization
A whistlestop tour of FHIR API authentication and authorizationA whistlestop tour of FHIR API authentication and authorization
A whistlestop tour of FHIR API authentication and authorizationDunmail Hodkinson
 
T-Systems. Automating ForgeRock Full Stack Deployments to a Magenta Cloud.
T-Systems. Automating ForgeRock Full Stack Deployments to a Magenta Cloud.T-Systems. Automating ForgeRock Full Stack Deployments to a Magenta Cloud.
T-Systems. Automating ForgeRock Full Stack Deployments to a Magenta Cloud.ForgeRock
 
BDD Approach with Karate Framework in Service Tests
BDD Approach with Karate Framework in Service TestsBDD Approach with Karate Framework in Service Tests
BDD Approach with Karate Framework in Service Testskloia
 
Ur vitals: Medical Records Vault
Ur vitals: Medical Records VaultUr vitals: Medical Records Vault
Ur vitals: Medical Records VaultCodelattice
 

La actualidad más candente (20)

FINODEX introduces FIWARE
FINODEX introduces FIWAREFINODEX introduces FIWARE
FINODEX introduces FIWARE
 
Technical Case Study: McKesson - Employing the Open Identity Stack
Technical Case Study: McKesson - Employing the Open Identity StackTechnical Case Study: McKesson - Employing the Open Identity Stack
Technical Case Study: McKesson - Employing the Open Identity Stack
 
Integrating Healthcare Applications with EMR Systems and Databases and Transf...
Integrating Healthcare Applications with EMR Systems and Databases and Transf...Integrating Healthcare Applications with EMR Systems and Databases and Transf...
Integrating Healthcare Applications with EMR Systems and Databases and Transf...
 
Connected Finance Reference Architecture
Connected Finance Reference ArchitectureConnected Finance Reference Architecture
Connected Finance Reference Architecture
 
Customer Scale: Stateless Sessions and Managing High-Volume Digital Services
Customer Scale: Stateless Sessions and Managing High-Volume Digital ServicesCustomer Scale: Stateless Sessions and Managing High-Volume Digital Services
Customer Scale: Stateless Sessions and Managing High-Volume Digital Services
 
Webinar: Consent 2.0: Applying User-Managed Access to the Privacy Challenge
Webinar: Consent 2.0: Applying User-Managed Access to the Privacy ChallengeWebinar: Consent 2.0: Applying User-Managed Access to the Privacy Challenge
Webinar: Consent 2.0: Applying User-Managed Access to the Privacy Challenge
 
Incredible Edible Identity
Incredible Edible IdentityIncredible Edible Identity
Incredible Edible Identity
 
Trust Elevation: Implementing an OAuth2 Infrastructure using OpenID Connect &...
Trust Elevation: Implementing an OAuth2 Infrastructure using OpenID Connect &...Trust Elevation: Implementing an OAuth2 Infrastructure using OpenID Connect &...
Trust Elevation: Implementing an OAuth2 Infrastructure using OpenID Connect &...
 
apidays LIVE London 2021 - Securing PII at runtime by Rob Dickinson, Resurfac...
apidays LIVE London 2021 - Securing PII at runtime by Rob Dickinson, Resurfac...apidays LIVE London 2021 - Securing PII at runtime by Rob Dickinson, Resurfac...
apidays LIVE London 2021 - Securing PII at runtime by Rob Dickinson, Resurfac...
 
Provisioning IoT...Oh Baby You Know Meeee!
Provisioning IoT...Oh Baby You Know Meeee!Provisioning IoT...Oh Baby You Know Meeee!
Provisioning IoT...Oh Baby You Know Meeee!
 
Consumerizing Industrial IoT Access Control: Using UMA to Add Privacy and Usa...
Consumerizing Industrial IoT Access Control: Using UMA to Add Privacy and Usa...Consumerizing Industrial IoT Access Control: Using UMA to Add Privacy and Usa...
Consumerizing Industrial IoT Access Control: Using UMA to Add Privacy and Usa...
 
FIWARE Overview of Generic Enablers
FIWARE Overview of Generic EnablersFIWARE Overview of Generic Enablers
FIWARE Overview of Generic Enablers
 
apidays LIVE Australia 2021 - Levelling up database security by thinking in A...
apidays LIVE Australia 2021 - Levelling up database security by thinking in A...apidays LIVE Australia 2021 - Levelling up database security by thinking in A...
apidays LIVE Australia 2021 - Levelling up database security by thinking in A...
 
The New Venn of Access Control in the API-Mobile-IOT Era
The New Venn of Access Control in the API-Mobile-IOT EraThe New Venn of Access Control in the API-Mobile-IOT Era
The New Venn of Access Control in the API-Mobile-IOT Era
 
[WSO2Con EU 2018] Identity APIs is the New Black
[WSO2Con EU 2018] Identity APIs is the New Black[WSO2Con EU 2018] Identity APIs is the New Black
[WSO2Con EU 2018] Identity APIs is the New Black
 
Power
PowerPower
Power
 
A whistlestop tour of FHIR API authentication and authorization
A whistlestop tour of FHIR API authentication and authorizationA whistlestop tour of FHIR API authentication and authorization
A whistlestop tour of FHIR API authentication and authorization
 
T-Systems. Automating ForgeRock Full Stack Deployments to a Magenta Cloud.
T-Systems. Automating ForgeRock Full Stack Deployments to a Magenta Cloud.T-Systems. Automating ForgeRock Full Stack Deployments to a Magenta Cloud.
T-Systems. Automating ForgeRock Full Stack Deployments to a Magenta Cloud.
 
BDD Approach with Karate Framework in Service Tests
BDD Approach with Karate Framework in Service TestsBDD Approach with Karate Framework in Service Tests
BDD Approach with Karate Framework in Service Tests
 
Ur vitals: Medical Records Vault
Ur vitals: Medical Records VaultUr vitals: Medical Records Vault
Ur vitals: Medical Records Vault
 

Similar a EduID Mobile App - Use-Cases, Concepts and Implementation

Federation Evolved: How Cloud, Mobile & APIs Change the Way We Broker Identity
Federation Evolved: How Cloud, Mobile & APIs Change the Way We Broker IdentityFederation Evolved: How Cloud, Mobile & APIs Change the Way We Broker Identity
Federation Evolved: How Cloud, Mobile & APIs Change the Way We Broker IdentityCA API Management
 
Who’s Knocking? Identity for APIs, Web and Mobile
Who’s Knocking? Identity for APIs, Web and MobileWho’s Knocking? Identity for APIs, Web and Mobile
Who’s Knocking? Identity for APIs, Web and MobileNordic APIs
 
API, Integration, and SOA Convergence
API, Integration, and SOA ConvergenceAPI, Integration, and SOA Convergence
API, Integration, and SOA ConvergenceKasun Indrasiri
 
TechTalk: Accelerate Mobile Development using SDKs and Open APIs With CA API ...
TechTalk: Accelerate Mobile Development using SDKs and Open APIs With CA API ...TechTalk: Accelerate Mobile Development using SDKs and Open APIs With CA API ...
TechTalk: Accelerate Mobile Development using SDKs and Open APIs With CA API ...CA Technologies
 
CIS 2015 Extreme OpenID Connect - John Bradley
CIS 2015 Extreme OpenID Connect - John BradleyCIS 2015 Extreme OpenID Connect - John Bradley
CIS 2015 Extreme OpenID Connect - John BradleyCloudIDSummit
 
OAuth with Salesforce - Demystified
OAuth with Salesforce - DemystifiedOAuth with Salesforce - Demystified
OAuth with Salesforce - DemystifiedCalvin Noronha
 
Con8823 access management for the internet of things-final
Con8823   access management for the internet of things-finalCon8823   access management for the internet of things-final
Con8823 access management for the internet of things-finalOracleIDM
 
Implementing Microservices Security Patterns & Protocols with Spring
Implementing Microservices Security Patterns & Protocols with SpringImplementing Microservices Security Patterns & Protocols with Spring
Implementing Microservices Security Patterns & Protocols with SpringVMware Tanzu
 
Meetup 2022 - API Gateway landscape.pdf
Meetup 2022 - API Gateway landscape.pdfMeetup 2022 - API Gateway landscape.pdf
Meetup 2022 - API Gateway landscape.pdfRed Hat
 
Introduction to Event-Driven Architecture
Introduction to Event-Driven Architecture Introduction to Event-Driven Architecture
Introduction to Event-Driven Architecture Solace
 
OAuth for QuickBooks Online REST Services
OAuth for QuickBooks Online REST ServicesOAuth for QuickBooks Online REST Services
OAuth for QuickBooks Online REST ServicesIntuit Developer
 
MuleSoft Meetup Charlotte 2019
MuleSoft Meetup Charlotte  2019MuleSoft Meetup Charlotte  2019
MuleSoft Meetup Charlotte 2019Subhash Patel
 
Enable Oauth2.0 with Sentinet API Management (Massimo Crippa @ BTUG Event)
Enable Oauth2.0 with Sentinet API Management (Massimo Crippa @ BTUG Event)Enable Oauth2.0 with Sentinet API Management (Massimo Crippa @ BTUG Event)
Enable Oauth2.0 with Sentinet API Management (Massimo Crippa @ BTUG Event)Codit
 
SharePoint 2013 App Provisioning Models
SharePoint 2013 App Provisioning ModelsSharePoint 2013 App Provisioning Models
SharePoint 2013 App Provisioning ModelsShailen Sukul
 
e-suap - general software architecture (English)
e-suap - general software architecture (English)e-suap - general software architecture (English)
e-suap - general software architecture (English)Sabino Labarile
 
Red Hat Mobile
Red Hat MobileRed Hat Mobile
Red Hat MobileRed Hat
 
The App Evolution
The App EvolutionThe App Evolution
The App EvolutionDev_Events
 
Securing Microservices in Hybrid Cloud
Securing Microservices in Hybrid CloudSecuring Microservices in Hybrid Cloud
Securing Microservices in Hybrid CloudVMware Tanzu
 

Similar a EduID Mobile App - Use-Cases, Concepts and Implementation (20)

Federation Evolved: How Cloud, Mobile & APIs Change the Way We Broker Identity
Federation Evolved: How Cloud, Mobile & APIs Change the Way We Broker IdentityFederation Evolved: How Cloud, Mobile & APIs Change the Way We Broker Identity
Federation Evolved: How Cloud, Mobile & APIs Change the Way We Broker Identity
 
Who’s Knocking? Identity for APIs, Web and Mobile
Who’s Knocking? Identity for APIs, Web and MobileWho’s Knocking? Identity for APIs, Web and Mobile
Who’s Knocking? Identity for APIs, Web and Mobile
 
API, Integration, and SOA Convergence
API, Integration, and SOA ConvergenceAPI, Integration, and SOA Convergence
API, Integration, and SOA Convergence
 
Oracle mobile cloud service
Oracle mobile cloud serviceOracle mobile cloud service
Oracle mobile cloud service
 
TechTalk: Accelerate Mobile Development using SDKs and Open APIs With CA API ...
TechTalk: Accelerate Mobile Development using SDKs and Open APIs With CA API ...TechTalk: Accelerate Mobile Development using SDKs and Open APIs With CA API ...
TechTalk: Accelerate Mobile Development using SDKs and Open APIs With CA API ...
 
CIS 2015 Extreme OpenID Connect - John Bradley
CIS 2015 Extreme OpenID Connect - John BradleyCIS 2015 Extreme OpenID Connect - John Bradley
CIS 2015 Extreme OpenID Connect - John Bradley
 
OAuth with Salesforce - Demystified
OAuth with Salesforce - DemystifiedOAuth with Salesforce - Demystified
OAuth with Salesforce - Demystified
 
Con8823 access management for the internet of things-final
Con8823   access management for the internet of things-finalCon8823   access management for the internet of things-final
Con8823 access management for the internet of things-final
 
Implementing Microservices Security Patterns & Protocols with Spring
Implementing Microservices Security Patterns & Protocols with SpringImplementing Microservices Security Patterns & Protocols with Spring
Implementing Microservices Security Patterns & Protocols with Spring
 
Meetup 2022 - API Gateway landscape.pdf
Meetup 2022 - API Gateway landscape.pdfMeetup 2022 - API Gateway landscape.pdf
Meetup 2022 - API Gateway landscape.pdf
 
Introduction to Event-Driven Architecture
Introduction to Event-Driven Architecture Introduction to Event-Driven Architecture
Introduction to Event-Driven Architecture
 
OAuth for QuickBooks Online REST Services
OAuth for QuickBooks Online REST ServicesOAuth for QuickBooks Online REST Services
OAuth for QuickBooks Online REST Services
 
MuleSoft Meetup Charlotte 2019
MuleSoft Meetup Charlotte  2019MuleSoft Meetup Charlotte  2019
MuleSoft Meetup Charlotte 2019
 
Enable Oauth2.0 with Sentinet API Management (Massimo Crippa @ BTUG Event)
Enable Oauth2.0 with Sentinet API Management (Massimo Crippa @ BTUG Event)Enable Oauth2.0 with Sentinet API Management (Massimo Crippa @ BTUG Event)
Enable Oauth2.0 with Sentinet API Management (Massimo Crippa @ BTUG Event)
 
SharePoint 2013 App Provisioning Models
SharePoint 2013 App Provisioning ModelsSharePoint 2013 App Provisioning Models
SharePoint 2013 App Provisioning Models
 
Oauth2.0
Oauth2.0Oauth2.0
Oauth2.0
 
e-suap - general software architecture (English)
e-suap - general software architecture (English)e-suap - general software architecture (English)
e-suap - general software architecture (English)
 
Red Hat Mobile
Red Hat MobileRed Hat Mobile
Red Hat Mobile
 
The App Evolution
The App EvolutionThe App Evolution
The App Evolution
 
Securing Microservices in Hybrid Cloud
Securing Microservices in Hybrid CloudSecuring Microservices in Hybrid Cloud
Securing Microservices in Hybrid Cloud
 

Más de Christian Glahn

Personalisierung, Learning Design und Automatisierung mit Moodle
Personalisierung, Learning Design und Automatisierung mit MoodlePersonalisierung, Learning Design und Automatisierung mit Moodle
Personalisierung, Learning Design und Automatisierung mit MoodleChristian Glahn
 
Digitale Lehre jenseits von Zoom und Moodle
Digitale Lehre jenseits von Zoom und MoodleDigitale Lehre jenseits von Zoom und Moodle
Digitale Lehre jenseits von Zoom und MoodleChristian Glahn
 
Dialog und Prüfen im Flipped Classroom mit grossen Gruppen
Dialog und Prüfen im Flipped Classroom mit grossen GruppenDialog und Prüfen im Flipped Classroom mit grossen Gruppen
Dialog und Prüfen im Flipped Classroom mit grossen GruppenChristian Glahn
 
Adaptive Learning Experiences across Devices: Leveraging Multi-Modal Learnin...
Adaptive Learning Experiences across Devices: Leveraging Multi-Modal Learnin...Adaptive Learning Experiences across Devices: Leveraging Multi-Modal Learnin...
Adaptive Learning Experiences across Devices: Leveraging Multi-Modal Learnin...Christian Glahn
 
Future Skills - Targetting curriculum innovation
Future Skills - Targetting curriculum innovationFuture Skills - Targetting curriculum innovation
Future Skills - Targetting curriculum innovationChristian Glahn
 
Flexibel in neuen Kontexten lernen
Flexibel in neuen Kontexten lernenFlexibel in neuen Kontexten lernen
Flexibel in neuen Kontexten lernenChristian Glahn
 
Mobiles Lernen gestalten
Mobiles Lernen gestaltenMobiles Lernen gestalten
Mobiles Lernen gestaltenChristian Glahn
 
The Multiple Apps and Devices of Swiss Freshmen University Students
The Multiple Apps and Devices of Swiss Freshmen University StudentsThe Multiple Apps and Devices of Swiss Freshmen University Students
The Multiple Apps and Devices of Swiss Freshmen University StudentsChristian Glahn
 
Getting Ready for the EC-TEL Doctoral Consortium
Getting Ready for the EC-TEL Doctoral ConsortiumGetting Ready for the EC-TEL Doctoral Consortium
Getting Ready for the EC-TEL Doctoral ConsortiumChristian Glahn
 
Design Thinking for Technology Enhanced Learning
Design Thinking for Technology Enhanced LearningDesign Thinking for Technology Enhanced Learning
Design Thinking for Technology Enhanced LearningChristian Glahn
 
Designing Mobile Inquiry-based Learning Activities: Learners' Agency and Tech...
Designing Mobile Inquiry-based Learning Activities: Learners' Agency and Tech...Designing Mobile Inquiry-based Learning Activities: Learners' Agency and Tech...
Designing Mobile Inquiry-based Learning Activities: Learners' Agency and Tech...Christian Glahn
 
Design Thinking for Learning Analytics
Design Thinking for Learning AnalyticsDesign Thinking for Learning Analytics
Design Thinking for Learning AnalyticsChristian Glahn
 
Learning Design for Teachers in a Hurry
Learning Design for Teachers in a HurryLearning Design for Teachers in a Hurry
Learning Design for Teachers in a HurryChristian Glahn
 
Integrating Native Mobile Apps into Institutional Ed-Tech Ecosystems
Integrating Native Mobile Apps into Institutional Ed-Tech EcosystemsIntegrating Native Mobile Apps into Institutional Ed-Tech Ecosystems
Integrating Native Mobile Apps into Institutional Ed-Tech EcosystemsChristian Glahn
 
How short can you make learning?
How short can you make learning?How short can you make learning?
How short can you make learning?Christian Glahn
 
Getting Ready for the ECTEL Doctoral Consortium, Part 2
Getting Ready for the ECTEL Doctoral Consortium, Part 2Getting Ready for the ECTEL Doctoral Consortium, Part 2
Getting Ready for the ECTEL Doctoral Consortium, Part 2Christian Glahn
 
Getting Ready for the ECTEL Doctoral Consortium, Part 1
Getting Ready for the ECTEL Doctoral Consortium, Part 1Getting Ready for the ECTEL Doctoral Consortium, Part 1
Getting Ready for the ECTEL Doctoral Consortium, Part 1Christian Glahn
 
10th eduhub days, 18 years Swiss Virtual Campus - looking back and looking fo...
10th eduhub days, 18 years Swiss Virtual Campus - looking back and looking fo...10th eduhub days, 18 years Swiss Virtual Campus - looking back and looking fo...
10th eduhub days, 18 years Swiss Virtual Campus - looking back and looking fo...Christian Glahn
 
Augmented Learning for the Digital Campus
Augmented Learning for the Digital CampusAugmented Learning for the Digital Campus
Augmented Learning for the Digital CampusChristian Glahn
 
Blended Learning Konkret
Blended Learning KonkretBlended Learning Konkret
Blended Learning KonkretChristian Glahn
 

Más de Christian Glahn (20)

Personalisierung, Learning Design und Automatisierung mit Moodle
Personalisierung, Learning Design und Automatisierung mit MoodlePersonalisierung, Learning Design und Automatisierung mit Moodle
Personalisierung, Learning Design und Automatisierung mit Moodle
 
Digitale Lehre jenseits von Zoom und Moodle
Digitale Lehre jenseits von Zoom und MoodleDigitale Lehre jenseits von Zoom und Moodle
Digitale Lehre jenseits von Zoom und Moodle
 
Dialog und Prüfen im Flipped Classroom mit grossen Gruppen
Dialog und Prüfen im Flipped Classroom mit grossen GruppenDialog und Prüfen im Flipped Classroom mit grossen Gruppen
Dialog und Prüfen im Flipped Classroom mit grossen Gruppen
 
Adaptive Learning Experiences across Devices: Leveraging Multi-Modal Learnin...
Adaptive Learning Experiences across Devices: Leveraging Multi-Modal Learnin...Adaptive Learning Experiences across Devices: Leveraging Multi-Modal Learnin...
Adaptive Learning Experiences across Devices: Leveraging Multi-Modal Learnin...
 
Future Skills - Targetting curriculum innovation
Future Skills - Targetting curriculum innovationFuture Skills - Targetting curriculum innovation
Future Skills - Targetting curriculum innovation
 
Flexibel in neuen Kontexten lernen
Flexibel in neuen Kontexten lernenFlexibel in neuen Kontexten lernen
Flexibel in neuen Kontexten lernen
 
Mobiles Lernen gestalten
Mobiles Lernen gestaltenMobiles Lernen gestalten
Mobiles Lernen gestalten
 
The Multiple Apps and Devices of Swiss Freshmen University Students
The Multiple Apps and Devices of Swiss Freshmen University StudentsThe Multiple Apps and Devices of Swiss Freshmen University Students
The Multiple Apps and Devices of Swiss Freshmen University Students
 
Getting Ready for the EC-TEL Doctoral Consortium
Getting Ready for the EC-TEL Doctoral ConsortiumGetting Ready for the EC-TEL Doctoral Consortium
Getting Ready for the EC-TEL Doctoral Consortium
 
Design Thinking for Technology Enhanced Learning
Design Thinking for Technology Enhanced LearningDesign Thinking for Technology Enhanced Learning
Design Thinking for Technology Enhanced Learning
 
Designing Mobile Inquiry-based Learning Activities: Learners' Agency and Tech...
Designing Mobile Inquiry-based Learning Activities: Learners' Agency and Tech...Designing Mobile Inquiry-based Learning Activities: Learners' Agency and Tech...
Designing Mobile Inquiry-based Learning Activities: Learners' Agency and Tech...
 
Design Thinking for Learning Analytics
Design Thinking for Learning AnalyticsDesign Thinking for Learning Analytics
Design Thinking for Learning Analytics
 
Learning Design for Teachers in a Hurry
Learning Design for Teachers in a HurryLearning Design for Teachers in a Hurry
Learning Design for Teachers in a Hurry
 
Integrating Native Mobile Apps into Institutional Ed-Tech Ecosystems
Integrating Native Mobile Apps into Institutional Ed-Tech EcosystemsIntegrating Native Mobile Apps into Institutional Ed-Tech Ecosystems
Integrating Native Mobile Apps into Institutional Ed-Tech Ecosystems
 
How short can you make learning?
How short can you make learning?How short can you make learning?
How short can you make learning?
 
Getting Ready for the ECTEL Doctoral Consortium, Part 2
Getting Ready for the ECTEL Doctoral Consortium, Part 2Getting Ready for the ECTEL Doctoral Consortium, Part 2
Getting Ready for the ECTEL Doctoral Consortium, Part 2
 
Getting Ready for the ECTEL Doctoral Consortium, Part 1
Getting Ready for the ECTEL Doctoral Consortium, Part 1Getting Ready for the ECTEL Doctoral Consortium, Part 1
Getting Ready for the ECTEL Doctoral Consortium, Part 1
 
10th eduhub days, 18 years Swiss Virtual Campus - looking back and looking fo...
10th eduhub days, 18 years Swiss Virtual Campus - looking back and looking fo...10th eduhub days, 18 years Swiss Virtual Campus - looking back and looking fo...
10th eduhub days, 18 years Swiss Virtual Campus - looking back and looking fo...
 
Augmented Learning for the Digital Campus
Augmented Learning for the Digital CampusAugmented Learning for the Digital Campus
Augmented Learning for the Digital Campus
 
Blended Learning Konkret
Blended Learning KonkretBlended Learning Konkret
Blended Learning Konkret
 

Último

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 

Último (20)

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 

EduID Mobile App - Use-Cases, Concepts and Implementation

  • 1. FHO Fachhochschule Ostschweiz EduID Mobile App Use-cases, Concepts, Implementation
  • 2. @phish108 @htwblc Part I Use Cases and Concepts
  • 3. The “Cloud” from a Service Perspective Clients @phish108 @htwblc
  • 4. The “Cloud” from a Device Perspective Roaming Profiles @phish108 @htwblc
  • 5. The “Cloud” from a User Perspective Smart Environments @phish108 @htwblc
  • 6. Shifting from Feature Services to Smart Environments Glahn (2013). What we mean when we talk about mobile services. SIG Mobile Whitepaper @phish108 @htwblc
  • 8. Authorization is about Trust Organization Trusted User & App Store Trusted Mobile DeviceService Federation Untrusted Personal Data Internet @phish108 @htwblc
  • 9. 1. OIDC for Responsive Web-Apps 2. AppAuth for tightly integrated native mobile apps 3. Token Agent Authorization for loosely coupled native apps @phish108 @htwblc 3 Approaches
  • 10. Approach 1: Responsive Web-Apps (OpenID Connect / OAuth2, SAML) @phish108 @htwblc
  • 11. Open ID Connect: 3 Flows to Authorizations @phish108 @htwblc 1. Implicit flow • Get an authorization from an IDP for accessing a service with limited session details 2. Code flow • Receive an authorization code for fetching confidential session details from the IDP 3. Hybrid flow • Get an authorization from an IDP for accessing a service with confidential session details in one step
  • 12. OpenID Connect (OIDC) 26.04.2017Corporate IT, FHNW 11 «A Simple Identity layer on top of OAuth 2.0» From the website (http://openid.net): − OIDC is an interoperable authentication protocol based on the OAuth 2.0 family of specifications. It uses straightforward REST/JSON message flows with a design goal of «making simple things simple and complicated things possible». It’s uniquely easy for developers to integrate, compared to any preceding Identity protocol. − OIDC allows for clients of all types, including browser-based JavaScript and native mobile apps, to launch sign-in flows and receive verifiable assertions about the identity of signed-in users.
  • 13. SAML vs OIDC vs OAuth 26.04.2017Corporate IT, FHNW 12 Simply said: − SAML: single sign-on for enterprise users − OAuth: API authorization between applications − OIDC: single sign-on for consumers + API access Token format: − SAML: XML − OIDC: JWT (JSON web token) The whole story: «Unifying Authentication & Delegated API Access for Mobile, Web and the Desktop with OpenID Connect and OAuth2 by Dominick Baier» https://vimeo.com/113604459
  • 14. GET /authorize ?client_id=app1 &scope=openid profile &redirect_uri=https://app.com/cb &response_type=id_token token &state=af0ifjsldkj &nonce=n-0S6_WzA2Mj Implicit Flow 26.04.2017Corporate IT, FHNW 13 − One of multiple flows (processes) defined in the specification − Specifically designed for «untrusted clients» such as JavaScript apps − Key steps: − Client sends the request to the Authorization Server. − Authorization Server authenticates the End-User, obtains consent, sends him/her back to the Client with an ID Token and, if requested, an Access (Bearer) Token. − Client validates the tokens and retrieves the End-User's Subject Identifier. − Client uses the Access Token for calls to Backend Web Services
  • 15. @phish108 @htwblc Approach 2: Integrated Service Apps or Service-bound Apps (AppAuth)
  • 16. © 2017 SWITCH | 15 Startseite Untertitel Unternehmenspräsentation Christoph Graf, Rolf Brugger swisseduid@switch.ch SIG Mobile, 25.4.2017 @SWITCH Use case of a “Service-bound Mobile App” SWITCHdrive App
  • 17. SWITCHdrive Sync & share on Swiss servers Keep your data on your devices synchronized and share them with your contacts – on secure safe servers Your benefits • Data in Switzerland • Fast network connection to SWITCH • Simple user activation Customers • Universities • Hospitals • Other institutions Services • SWITCHdrive- Serverfarm, based on ownCloud • High dissemination in academic Switzerland (>80% of universities)
  • 18. SWITCHdrive App – The official mobile client of the SWITCHdrive service • SWITCH-branded, based on owncloud app • Preconfigured with fixed endpoints for SWITCHdrive • Feature set in line with SWITCHdrive capabilities • Support limited to this app Usage scenario description
  • 19. • Controlling the user experience end-to-end • Service branding opportunity (CI/CD) • Needs to maintain an app (development/adaptation/preconfiguration/testing, mobile martketplaces, etc.) • One single app to document and support • No re-use opportunity of potentially compatible app Service operator perspective
  • 20. • Opportunity to develop, adapt, brand, preconfigure or support app exclusively for specific services as a contractor to service operator • (Probably) no opportunity to offer alternatives to users bypassing service operator • Uses standard authentication mechanisms (AppAuth, OAuth2, OIDC): availability of libraries, development and testing tools, tutorials. App developer perspective
  • 21. www.switch.ch/30years SWITCH – an integral part of the Swiss academic community since 1987.
  • 22. @phish108 @htwblc Approach 3: EduID Mobile App (Token-agent assertions)
  • 23. • Multi-LMS learning app • API dependent, not service dependent • No separate backend service • Entering and managing authorizations cumbersome • Major UX barrier • Specialized solution for some didactics @phish108 @htwblc The Story of Mobler
  • 24. @phish108 @htwblc How relevant are these cases for your institution?
  • 25. @phish108 @htwblc Part II EduID Mobile App Architecture
  • 26. @phish108 @htwblc EduID Mobile App Reference Architecture 1 234 5
  • 27. • Focus on business logic • Completely external SSO • Federation independence • Loose bounds with specific services and instances • Independence of specific authorization mechanics • Multi factor authorization • Service-level authorization • Customers binding @phish108 @htwblc Benefits for Developers
  • 28. • Continuous but flexible authorization and access control • Apps will not see forbidden service endpoints • Apps will not know authorization endpoints • Easier adoption of apps • No immediate need for app customizations @phish108 @htwblc Benefits for Organizations
  • 29. • One stop authorization and identity management • No need to enter URLs in apps. • No need to enter passwords all the time • Transparent and explicit authorization of services @phish108 @htwblc Benefits for Actors
  • 30. Requirements • Minimum Changes compared to OpenID Connect implementations • No Interference with existing OpenID Connect and AppAuth • Only standardized concepts (RFC-level) @phish108 @htwblc Implementation Requirements for Service Providers
  • 31. Solution • Variation of OAuth2/OpenID Connect Code Flow • Trust-agent initiates the code request phase, directly • No separate authorization step • All request parameters are forwarded to the OAuth2 endpoints • Service extends code request with the required OAuth2 scope @phish108 @htwblc Implementation Requirements for Service Providers
  • 32. @phish108 @htwblc PHP-CodefromtheMoodleImplementation if (array_key_exists("id", $_GET)) { // Step 1: Code-flow, Hybrid-Flow // normal use when the user comes via the login page // triggers the authorization request $callback->handleAuthorization(); } elseif (array_key_exists("state", $_GET)) { // Step 2: Code-flow, Hybrid-Flow // response from the authorization endpoint $callback->authorizeUser(); } elseif (array_key_exists("assertion", $_GET)) { // EduID Extension: rfc7521 forwarding $callback->authorizeAssertion(); } else { // bad request or OAuth2 error http_response_code(403); exit; }
  • 33. public function authorizeAssertion() { // rfc7521 forwarding: extend the incoming assertion parameters $param = array_merge($_GET, ["scope"=> "openid profile email"]); // Fetch the access-token and user–information // - this is the same call as in step 2 of the Code Flow $res = $this->callTokenEndpoint($param); if (!$this->handleToken($res)) { http_response_code(403); } } @phish108 @htwblc PHP-CodefromtheMoodleImplementation
  • 34. Reduction of Business Logic • Authorization request via mobile-OS instead of self-authorization • Self-identification • Service or service-capability demands • Single or multi-endpoint handling • Endpoint and token management (as usual) @phish108 @htwblc Implementation Requirements for App Developers
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 41.