A repository for Sitecore Host Plugins
For background information about what is a Sitecore Host and Host Plugins, refer to Sitecore Host Part one blog post.
In this repository, we have the following Sitecore Host Plugins for extending Sitecore Identity Server
- Avanade.Plugin.IdentityProvider.Ids4Demo
- Avanade.Plugin.IdentityProvider.Ids4Adfs
- Avanade.Plugin.IdentityProvider.Ids4WsFederation
- Avanade.Plugin.IdentityProvider.Ids4Facebook
This plugin will extend Sitecore Identity Server to with IdentityServer4 Demo provider
This plugin will extend Sitecore Identity Server with Active Directory Open ID Connect provider
This plugin will extend Sitecore Identity Server with Active Directory Federation Services provider
This plugin will extend Sitecore Identity Server with external Facebook external login
You need to Add the Sitecore Identity NuGet Feed to Visual Studio to Build this Project
Tools -> Package Manager Settings -> Package Sources Add the Following Feed
Plugins are distributed as Nuget packages. To add a plugin to a host application so that it is loaded at runtime, the plugin must be unpacked and have its assets copied to the correct locations.
If you do not have one already, you need to create an environment folder under the sitecoreruntime
folder. A Sitecore Host application will default its environment to Production. Unless a different environment is supplied at startup (via the --env command) it will look for the production folder first:
For example: hostapp/sitecoreruntime/production
You need to create a folder for the plugin (in our case name it Avanade.Plugin.IdentityProvider.Ids4WsFederation) . This is where the plugin manifest, assets and configuration are located. This is located inside the sitecore
folder, which is inside an individual environment folder
The sitecoreruntime/<env>/sitecore
folder does not override files in the hosts sitecore
folder. This is a unique folder used for loading plugin assets.
Runtime environment folders cannot contain a sitecoreruntime
folder of their own.
We have our plugin named Avanade.Plugin.IdentityProvider.Ids4WsFederation.1.0.0.nupkg
Unpack the plugin contents. You will notice our package contains special sitecore
directory in the root of the nupkg
package with additional things inside it. Everything else is the standard Nuget structure.
Copy the contents of the Nuget sitecore
folder to the plugin folder you created previously (for example, sitecoreruntime/production/sitecore/Avanade.Plugin.IdentityProvider.Ids4WsFederation
).
Our plugin package contains a lib folder, copy the assets from the correct target framework to the root of the sitecoreruntime/<env>
folder (for example, sitecoreruntime/production/*.dll
)
Our plugin package contains a content folder, copy the assets from this folder to the plugin folder created previously (for example, sitecoreruntime/production/sitecore/Avanade.Plugin.IdentityProvider.Ids4WsFederation
)
The final folder structure will looks similar to this below
Follow this steps here to register your application with your Azure Active Directory tenant You will get the Application/Client ID and Tenant ID required for the Azure AD plugin