One of the major changes in SharePoint 2013 is the introduction of apps. Apps for both SharePoint and Office provide a new model for developing, packaging and deploying custom solution for SharePoint.
This brief presentation will introduce the main aspects of the apps model introduced form Microsoft to addres custom features to SharePoint both on-premises and online.
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...Bram de Jager
The new SharePoint App Model provides different ways of building apps. As a developer you have to choose between development techniques, hosting options and more. This session discusses the architecture, various types of apps, application identity and permissions, and how to build these different types of apps. The session contains demos covering building SharePoint-hosted apps, implementing SharePoint 2013 chrome control, setting the right permissions, and more with Visual Studio 2012.
Deep dive into SharePoint 2013 hosted apps - Chris OBrienChris O'Brien
Covers key aspects of SharePoint 2013 apps, with a focus on SharePoint-hosted apps. Includes detail on app parts, using web parts within an app, configuring SSL, troubleshooting apps and possible reasons to move away from a SharePoint-hosted app to a cloud app. Also covers "high-privilege" apps which provision to the host web.
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...Bram de Jager
The new SharePoint App Model provides different ways of building apps. As a developer you have to choose between development techniques, hosting options and more. This session discusses the architecture, various types of apps, application identity and permissions, and how to build these different types of apps. The session contains demos covering building SharePoint-hosted apps, implementing SharePoint 2013 chrome control, setting the right permissions, and more with Visual Studio 2012.
Deep dive into SharePoint 2013 hosted apps - Chris OBrienChris O'Brien
Covers key aspects of SharePoint 2013 apps, with a focus on SharePoint-hosted apps. Includes detail on app parts, using web parts within an app, configuring SSL, troubleshooting apps and possible reasons to move away from a SharePoint-hosted app to a cloud app. Also covers "high-privilege" apps which provision to the host web.
Speaker: Dragan Panjkov;
In this session we will speak about SharePoint apps – new approach for development in new SharePoint. We will explain rationale behind Apps, basic concepts and various hosting options. We will also show you how to build your first app for SharePoint 2013.
Introducing the new SharePoint 2013 app modelJeremy Thake
Jeremy will introduce the new App Model and compare it to the existing app models available in SharePoint. Attendees will leave this session with a better understanding of:
• How Windows Azure can be leveraged in SharePoint apps, showcasing the oAuth and auto provisioning features
• An overview of the new SharePoint App model to bring your products to the Marketplace
• An comparison between the new App Model and existing Solutions Model in SharePoint
Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...Bram de Jager
The new SharePoint App Model provides different ways of building apps. As a developer you have to choose between development techniques, hosting options and more. This session discusses the architecture, various types of apps, application identity and permissions, and how to build these different types of apps.
The session contains demos covering building SharePoint-hosted apps, implementing SharePoint 2013 chrome control, setting the right permissions, and more with Visual Studio 2012.
This sessions if for everybody that always wanted to know about SharePoint development, but didn’t have anyone to ask, or didn’t have opportunity to try on their own. We’ll show how to start with SharePoint development, what API to use, when to use client API, is server side object model deprecated, how to setup development environment and more tips & tricks which are not usually mentioned.
This is a supplementary slide deck to the presentation on how to build native Android app which integrates with SharePoint Online by using Xamarin and Visual Studio. Check out sharemuch.com for the source code
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...Bram de Jager
With the new SharePoint App model running outside the SharePoint worker process it introduces new authentication models. As a developer you don't want to build multiple versions of the same app implementing each authentication model separately. This session explains the differences between securing SharePoint apps with OAuth in Office 365 and S2S High Trust in on-premise deployments. You will learn how to build a single app that will run on-premise, online and hybrid SharePoint environments.
Introduction to the new SharePoint 2013 App ModelNoorez Khamis
The new SharePoint 2013 App Model gives SharePoint developers a whole new platform to develop apps for Office and SharePoint using standard development languages, tools, and hosting services. SharePoint Apps are basically web applications that can be in any language, such as HTML, JavaScript, PHP, or .NET, using familiar web development tools such as Microsoft Visual Studio 2012, and a new web-based tool called "Napa" Office 365 Development Tools to build apps for SharePoint.
Continuous Integration is a wonderful and popular practice in the software development universe. Yet, for whatever reason, it seems much less commonly utilized in the SharePoint community. SharePoint (naturally) throws a few wrinkles into the process, but no substantial roadblocks, and the benefits of CI can be realized just as well on SharePoint projects as anywhere else. In this session, you'll learn why you should implement a CI process and then see how to do it using TFS and Visual Studio.
SharePoint 2013 Hosted App Presentation by Roy KimRoy Kim
Sharing my experience and knowledge of developing a SharePoint Hosted App during late 2012. This app is a photo slider with a Picture Library and a custom list to hold default settings. Subjects include, REST API, JavaScript Object Model, Client Web Part, App Web, Cross Domain Call to the host web and other developer insights.
Speaker: Dragan Panjkov;
In this session we will speak about SharePoint apps – new approach for development in new SharePoint. We will explain rationale behind Apps, basic concepts and various hosting options. We will also show you how to build your first app for SharePoint 2013.
Introducing the new SharePoint 2013 app modelJeremy Thake
Jeremy will introduce the new App Model and compare it to the existing app models available in SharePoint. Attendees will leave this session with a better understanding of:
• How Windows Azure can be leveraged in SharePoint apps, showcasing the oAuth and auto provisioning features
• An overview of the new SharePoint App model to bring your products to the Marketplace
• An comparison between the new App Model and existing Solutions Model in SharePoint
Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...Bram de Jager
The new SharePoint App Model provides different ways of building apps. As a developer you have to choose between development techniques, hosting options and more. This session discusses the architecture, various types of apps, application identity and permissions, and how to build these different types of apps.
The session contains demos covering building SharePoint-hosted apps, implementing SharePoint 2013 chrome control, setting the right permissions, and more with Visual Studio 2012.
This sessions if for everybody that always wanted to know about SharePoint development, but didn’t have anyone to ask, or didn’t have opportunity to try on their own. We’ll show how to start with SharePoint development, what API to use, when to use client API, is server side object model deprecated, how to setup development environment and more tips & tricks which are not usually mentioned.
This is a supplementary slide deck to the presentation on how to build native Android app which integrates with SharePoint Online by using Xamarin and Visual Studio. Check out sharemuch.com for the source code
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...Bram de Jager
With the new SharePoint App model running outside the SharePoint worker process it introduces new authentication models. As a developer you don't want to build multiple versions of the same app implementing each authentication model separately. This session explains the differences between securing SharePoint apps with OAuth in Office 365 and S2S High Trust in on-premise deployments. You will learn how to build a single app that will run on-premise, online and hybrid SharePoint environments.
Introduction to the new SharePoint 2013 App ModelNoorez Khamis
The new SharePoint 2013 App Model gives SharePoint developers a whole new platform to develop apps for Office and SharePoint using standard development languages, tools, and hosting services. SharePoint Apps are basically web applications that can be in any language, such as HTML, JavaScript, PHP, or .NET, using familiar web development tools such as Microsoft Visual Studio 2012, and a new web-based tool called "Napa" Office 365 Development Tools to build apps for SharePoint.
Continuous Integration is a wonderful and popular practice in the software development universe. Yet, for whatever reason, it seems much less commonly utilized in the SharePoint community. SharePoint (naturally) throws a few wrinkles into the process, but no substantial roadblocks, and the benefits of CI can be realized just as well on SharePoint projects as anywhere else. In this session, you'll learn why you should implement a CI process and then see how to do it using TFS and Visual Studio.
SharePoint 2013 Hosted App Presentation by Roy KimRoy Kim
Sharing my experience and knowledge of developing a SharePoint Hosted App during late 2012. This app is a photo slider with a Picture Library and a custom list to hold default settings. Subjects include, REST API, JavaScript Object Model, Client Web Part, App Web, Cross Domain Call to the host web and other developer insights.
Building a Windows Store App for SharePoint 2013Aspenware
Combine the fast, fluid and immersive experience of Windows Store apps with SharePoint 2013 to discover, organize and manage content. This session will walk through planning and building an app to interact with SharePoint content by utilizing the new APIs available with SharePoint 2013.
SharePoint Evolution conference 2013 - Bringing SharePoint Information into O...Wes Hackett
Office 2013 introduces new Apps for Office which allows developers to create apps which interact with Word, Excel and Outlook. Using an App for Office we can bring information from within the enterprises SharePoint platform and help users create documents and bring increased value form their SharePoint data. The session will explore some scenarios to bring SharePoint into the Office clients.
A Deep-Dive into Real-World SharePoint App DevelopmentSPC Adriatics
A Deep-Dive into Weal-world SharePoint App Development, presentation by Eric Shupps
Agenda:Build to Suit
Make the Network Work for You
The Database is King
Keep Traffic Moving
Cache In
Look Good but Perform Better
From Trashy to Classy: How The SharePoint 2013 App Model Changes EverythingAndrew Clark
Everybody wants an app or at least they think so, SharePoint 2013 provides an Application Model to handle all your 'appy' desires. Are your current SharePoint 2007 or 2010 solutions considered truly 'self-contained'? Probably not. In this session we will discuss the short comings of older solutions, briefly review the different App Model options and finally walk through the architecture of an existing SharePoint 2013 application. We will help you ignore the hype and spend time understanding the benefits of the App Model as it is crucial for your 2013 strategy.
SharePoint App Store - itunes for you businessAndrew Woodward
The SharePoint App Store and how business should consider how the impact of this within their organisation.
This is a non technical presentation and will also be available as a web cast from the SPSEMEA Online Event in Jan 2011
SharePoint 2013 provides a flexible platform and introduces the concept of SharePoint modern development. In addition to the conventional development methods, we will explore the SharePoint development tools that are part of Visual Studio 2012/2013. You will see the first class support for common app features including the app pages, lists, client parts, and more. Come learn how to develop apps using an Office 365 Developer Site, all without SharePoint installed on your developer machine!
Share point app architecture for the cloud and on premiseSonja Madsen
Gain insight into potential behind new app architecture that brings server-side functionality to the cloud,
keeps your SharePoint server clean from custom code, and can serve as a bridge between on-premise and cloud environments.
SharePoint Summit Vancouver: Reach your audience with a SharePoint mobile appMallory O'Connor
This presentation from the SharePoint Summit in Vancouver covers some different approaches to mobile solutions and includes a case study of SchoolLink, a SharePoint mobile app Habanero designed for the Surrey School District. A custom SharePoint web service allows content published on the district’s website to be pushed out to different mobile devices, increasing the communication between administrators and parents and managed by district staff through their SharePoint portal. The app was developed using the PhoneGap open-source framework which allows for easier development across different device platforms.
Hosted by Customer and Member Portals Practice Lead Mallory O'Connor, the one-hour session will also provide helpful insights on content, app maintenance, and technology that may help participants with a current project, as well as offer a chance to learn about the ways content can be extended from a SharePoint portal to mobile devices.
Presentation at SharePoint User Group UK, December 2012. Discusses SP2013 developer investments by order of potential impact (my view!), tooling enhancements (e.g. list/content type designer), apps, Display Templates (aka JSLink, aka Client Side Rendering), managed navigation, cross-site publishing etc.
Road to the Cloud - Extending your reach with SharePoint and Office 365Talbott Crowell
Presentation on SharePoint and Office 365 development for ISV's at Microsoft Cambridge on March 6th, 2014. More details https://info.windowsazure.com/Feb2014BostonRoadtotheCloudBusinessstrategyandnetworkingforISVs_Register.html?LeadSource=Email&browserLanguage=&LeadSourceDetail=Person-to-person
SPSNL - Bringing SharePoint information into Office through Office AppsWes Hackett
Office 2013 introduces new Apps for Office which allows developers to create apps which interact with Word, Excel and Outlook. Using an App for Office we can bring information from within the enterprises SharePoint platform and help users create documents and bring increased value form their SharePoint data. The session will explore some scenarios to bring SharePoint into the Office clients.
SharePoint 2013 Apps and the App ModelJames Tramel
SharePoint 2013 Apps - deep dive. We'll look at they work, what they look like, what they do and how to us apps. Its all about the apps. Apps are good, very good.
Biwug slideDesk first session 26/11/2013
This session is about an intro into the Apps model. There is much more to think about than just select what kind of type of app that you want to create.
Apps for SharePoint are easy-to-use, lightweight web applications.An app for SharePoint is a stand-alone, self-contained piece of functionality that extends the features and capabilities of a SharePoint site.App model is mainly designed for cloud hosting. It will not use server side code. It will use only client script like java script or jQuery, and will work on top of share point framework.
One of the biggest news of SharePoint 2013 is the app model, which allows creating apps for selling them through a public marketplace, the Microsoft Office Store, as well as for publishing them in a corporate App Catalog.
In this session you will learn what an app is, what are the available hosting models, how you can leverage the Client Side Object Model and the REST API to enrich your solutions. Moreover, you will learn how to publish your apps to the Office Store, or on the corporate App Catalog.
The overall goal of the session is to make you aware of the real potentials of this new capability. To attend this session you should have a good understanding of developing with .NET and general knowledge of SharePoint 2013.
(Almost) All About Apps for SharePoint 2013Dragan Panjkov
This slide deck is presented on Microsoft TechNet Day 2012, organized in Bosnia and Herzegovina. Main goal of this presentation is to introduce new SharePoint Apps to end users, developers and administrators.
This whitepaper, highlights the pros and cons of using two different aspects of SharePoint Add-ins which would enable enterprises to contextualize the use of SharePoint Add-ins...
Chris O'Brien - Comparing SharePoint add-ins (apps) with Office 365 appsChris O'Brien
A presentation I gave at SharePoint Evolutions 2015. Here, I compare SharePoint apps (now renamed "SharePoint Add-Ins" as of April 2015!) and the newer flavour of app development, Office 365 apps.
It focuses primarily on the perspective of a development team implementing the app - and factors to consider when deciding between the two approaches. However, to do this we must consider end-user and administration aspects, as well as code/development.
Key agenda points:
- Changes in SharePoint development
- Apps, 2 years on..
- SharePoint Add-Ins – a recap
- Office 365 apps - Why did Microsoft introduce these? What do they promise?
- Comparing SharePoint Add-Ins with Office 365 apps - For the end-user, administrator and developer
- Summary
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
2. WHAT IS A SHAREPOINT 2013 APP?
A SharePoint app is a custom solution that can access and
modify resources such as lists, documents, libraries, individual
items and other content.
The SharePoint 2013 app model provides a more flexible way to
build custom functionality that runs in SharePoint organization
both on-premises and in Office 365.
From MSDN: Apps for SharePoint are self-contained pieces of
functionality that extend the capabilities of a SharePoint
website.
3. APP MODEL DESIGN GOALS
SharePoint App has been designed to allow application running
both on-premises installation and in the cloud.
Te App model has been designed to address these goals
Stability
App never runs within SharePoint host environment
Independence
App can consume data though Web Services
Security
Apps code is authenticated and runs under a distinct identity
Cloud
App are published in app catalogs and in Office 365
4. APP MODEL SCHEMA
App Manifest
Web Page
HTML/CSS/JS
App
Is an XML file that specifies configurations like:
App title, description and icon
Supported locales, resource files for App localization
App prerequisites (search, bcs, user profile, ecc...)
Allowed external URLs (remote endpoints)
App permissions
6. AVAILABLE SHAREPOINT ARTIFACTS IN APPS
Features (Web-scoped only)
Custom actions (including shortcut menu
items and ribbon customizations)
Remote event receivers
App Parts, that are included in SharePoint
(but not custom Web Parts)
CSS files for use by SharePoint pages
Custom JavaScript files for use by SharePoint
pages
Modules (sets of files)
Pages
List templates
List and library instances
Custom list forms
Custom list views
Custom content types
Fields (of field types that are built into
SharePoint)
Microsoft Business Connectivity Services
(BCS) models (Web-scoped only), external
content types based on the model, and
external lists that use the content types
Workflows
Property bags
Web templates (but not site definitions)
7. HOSTING APPS FOR SHAREPOINT I
SharePoint
App Web
SharePoint
Host Web
Client-side code
Your hosted site
SharePoint
Host Web
Client-side & Server-side code
9. AUTHENTICATION
Internal Authentication
SharePoint collects credentials from
users, verify them and create a
signed token (SAML format).
SharePoint sites
SharePoint Hosted App
Remote-Hosted App through cross-
domain library (JS library)
External Authentication
Usually the web server that hosts the
remote web collects and verify
credentials from the user.
Oauth and Azure ACS
Server-to-Server (S2S)
10. SHAREPOINT HOSTED APP
Every App follow this URL pattern:
http://[APPPREFIX]-[APPHASH].[APPDOMAIN]/[APPNAME]?{StandardTokens}
APPPREFIX: our farm-related tenant
APPHASH: unique id, generated on every app installation
APPDOMAIN: our domain for Apps
APPNAME: the name of the App
{StandardTokens}: default querystrings for Apps:
SPHostUrl={HostUrl}
SPAppWebUrl={AppWebUrl}
SPLanguage={Language}
SPClientTag={ClientTag}
SPProductNumber={ProductNumber}
13. SHAREPOINT HOSTED APP: PROVISIONING
In the APP WEB
With declarative provisioning using Feature (like we’re doing now with SP2010)
In the HOST WEB
Programmatically, with REST or CSOM (this is not a best practice, but we can...)
14. SHAREPOINT HOSTED APP: UI COMPOSITION
Get syling for FREE
SharePoint provides CSS to style content
Master page for chrome
Resusable UI components
List view web part
Reusable UI controls like dialogs and callouts
Custom actions let you extend menus, ribbon and script
App web template
15. SHAREPOINT HOSTED APP: LOCALIZATION
In a SharePoint Hosted App we can localize:
Provisioning artifacts (as we know from SP2010)
App manifest
Javascript files
ASPX pages
17. PROVIDER-HOSTED APPS
You, or your provider for you, are the responsible for the
hosting of your App and its data
So, you’re the responsible for hosting the App, for multi-tenancy
support, availability and all the plumbing that you may know from
hosting web services.
Every Provider-Hosted App need a "clientId" and a "client certificate" in
order to complete trust
IISExpress is used to host the web project
Local DB is used for the SQL Database
18. PROVIDER-HOSTED APP: AUTHENTICATION
Apps use OAuth for secure communications
SharePoint & web application trust third party (ACS)
Trust developed using ClientId & ClientSecret
SharePoint & ACS know the ClientId
Web application & ACS know the ClientSecret
19. PROVIDER HOSTED APP: CHROME CONTROL
Artifact: in Cloud-Hosted Apps you can’t inherit from
SharePoint master page, because pages are hosted outside
SharePoint.
The Chrome control is a Javascript control, that allows you to
give end users a familiar look based on your intranet theme.
Provides consistent look and feel for you App
Includes navigation link back to host site
Customizable settings for menu commands
20. APP ENTRY POINTS
Start Page
Full immersion experience
App Part
Simple IFRAMES!
Custom pages, that users can insert into a web part page
in the Host Web, as we do with classic web parts
Available in EVERY type of Apps
If we are in a SharePoint-Hosted App, we have to insert:
<WebPartPages:AllowFraming ID="AllowFraming1" runat="server" />
Ui Custom Action
On the ribbon
On the Edit Control Block (ECB)
23. APP PART IN DETAIL
Every App-Part has:
A manifest
(used to specify page URL and
app part configurations)
App properties
(used to customize app-part
behaviour)
The App-Part is activated with
App installation
25. TOOLS AND TECHNOLOGIES AVAILABLE
Client Side
JQuery
Angular
Bootstrap Twitter
Enyo
JS Client Side Object Model (CSOM)
REST APIs
Server Side
ASP.NET MVC
ASP.NET MVC Web Forms
PHP
Ruby on Rails
OOB ASP.NET and SharePoint controls
Silverlight Client Side Object Model
(CSOM)
JS Client Side Object Model (CSOM)
.NET Client Side Object Model
REST calls
27. APP PUBLISHING
SharePoint-Hosted
No app registration required
Everything included in the .app
package
Provider-hosted
Developer must acquire ClientId &
ClientSecret
SharePoint artifacts in .app
package
Web assets in Web Deploy
package - developer must deploy
Developer must publish & deploy
SQL assets if not in Web Deploy
package
28. LICENSING YOUR APPS
The Office Store provides APIs for licensing SharePoint and Office Apps.
Here the validation service URL:
https://verificationservice.officeapps.live.com/ova/verificationagent.svc
You can choose from:
Free apps (perpetual and for all users)
Trial apps (limited time, all users or multi-user)
Paid apps (perpetual, all users and multi-user)
29. SHAREPOINT APP CONFIGURATION
Service Application for App Management
Two service application to configure
App Management Service
Site Subscription Setting Service
For Provider-Hosted App
Register App principals
It is necessary to set up the authentication if it not used Oauth:
S2S through certificate
30. SHAREPOINT APP: WHY?
Peppe (Giuseppe Marchi)
Basically, when you have a specific application with a specific purpose.
When you don’t have to communicate with other SharePoint sites or applications.
When you want to exalt your actual WEB skills.
When you want that your code runs into an isolated domain.
If you want to develop for the cloud (O365).
If you want to make money with the Office Market
31. SHAREPOINT APP: WHEN?
Microsoft presented this model for SharePoint 2013 because the technolgies
used in real scearios are using more and more client technologies.
The App model enrichs all the actors in the process solution development
with new capabilites and a new development and deployment apprach.
As usual, there are no exact rules to apply this model because it depends on
requirements, environment, project constraints, etc..
But other approaches similar to the apps can bel used:
a Single Page Application that consumes external data through REST services
IMA SpareParts
Macron
32. BIBLIOGRAPHY
Giuseppe Marchi, SharePoint & Office Conference 2013, L'APP-
MODEL DI SHAREPOINT 2013 DALLA A...
Giuseppe Marchi, SharePoint & Office Conference 2013, L'APP-
MODEL DI SHAREPOINT 2013 ... ALLA Z
Sean Laberee, SharePoint Conference 2014, Developing and
Debugging Apps for SharePoint with Visual Studio 2013
Microsoft Learning Product, Developing Microsoft® SharePoint®
Server 2013 Core Solutions
Editor's Notes
The app cannot interfer with SharePoint process or memory
App can run against SP2013 or later version
Permission applied to the app (Sandboxed run under identity of the user)
Provider could be IIS Server, Azure Server
You create a new SharePoint hosted app with a start page named "default.cshtml" in the "pages" list. Youinstall the app in the preceding host web and name it "exampleapp." You might expect the app homepage to be found at the following URL:
http://intranet.contoso.com/exampleapp/pages/default.cshtml
However, this is not the URL where the app's home page is located because SharePoint creates and uses anew unique domain each time it installs a new instance of a SharePoint hosted app. The correct URL lookslike the following:
http://contosotenant-aa46c3ffd61233.apps.contoso.com/exampleapp/pages/default.cshtml
SharePoint creates unique domains for each app in this way for two security reasons:
To separate app webs from host webs. By placing these in separate domains, cross-site scriptingtechniques cannot be used to circumvent security restrictions from app web to host web. To ensure that calls to SharePoint web services can be identified as originating from an appinstallation. This helps to ensure that permissions applied to an app installation cannot becircumvented.
Notice that the above SharePoint app URL includes the following parts: contosotenant. The first part of the unique domain is the tenancy in which the app is installed. aa46c3ffd61233. The second part of the unique domain is a unique 14-character identifier called theAPPUID. This number is unique to this installation of the app. apps.contoso.com. The third part of the unique domain is the app web hosting domain. You canconfigure this domain in Central Administration for an on-premises farm. In Office 365, the app webhosting domain is always sharepoint.com.