Reference
https://dev.office.com/sharepoint/docs/sp-add-ins/create-high-trust-sharepoint-add-ins
https://dev.office.com/sharepoint/docs/sp-add-ins/package-and-publish-high-trust-sharepoint-add-ins
Create add-in project
- Create new sitecollection with Develope Site template in SharePoint farm
- Create new project with template "APP/Add-in for SharePoint 2013" in Visual Studio
- Choose pfx file for certificate your add-in and provide the password and issue id
- Press F5 to debug
Package and publish add-in
- Publish web application to provider-hosted server
- Click Publish on web application project
- Create new publish profile
- Choose Web Deploy Package for Publish method
- Choose local folder for Package location
- "Default Web Site" or "Default Web Site/MyApp" for Site name
- Publish
- Deploy to IIS
- Location <project name>.deploy cmd file
- Run it within Command
- Disable Anonymous authentication and enable Window Authentication in IIS for "Default Web Site"
- Package add-in
- Click Publish on add-in project
- Choose publish profile created in step 1
- Click Edit to provide more information
- Client ID (find it in Web.config)
- Certificate Location (path of pfx)
- Certificate Password
- Issue ID
- Click Package the app
- Publish add-in to SharePoint
- Config SSL for Default Web Site
- Create App catelog site in CA (if not exist)
- Register add-in via page "/_layouts/15/appregnew.aspx"
- App Id (same as Client ID in step 2)
- Upload .app to Apps for SharePoint in App catelog site