During training it was discovered that CloudPOS has some limitations and we need to use MPos as well.
Now I have to figure out how certification work.
A certificate comes with the RetailSDK: ...\RetailSDK\BuildTools\ModernPOSAppxSigningCert-Contoso.pfx
For now our IT department has taken this certificate and installed it on the local machine where they installed MPOS for testing/training.
I checked the deployable package that was created earlier by MSBuild and this certificate is part of it. Is this just a development certificate or can this be used for the sandbox and production environments too?
I also see the name of this certificate in the customization.settings file:
<ModernPOSPackageCertificateKeyFile Condition="'$(ModernPOSPackageCertificateKeyFile)' == ''">$(MSBuildThisFileDirectory)\ModernPOSAppxSigningCert-Contoso.pfx</ModernPOSPackageCertificateKeyFile>
I did some research on certificates and saw this issue regarding thumbprints: community.dynamics.com/.../971143
That prompted me to look at the package.appxmanifest under Pos.App in the ModernPOS solution. It looks like it already has a certificate in there. I assume it is the one that is in RetailSDK buildTools mentioned above. Which I also assume is the one that is in the customization.settings file already.
Also, if this is not the certificate to use for the sandbox (user testing) and production environments, how do I go about getting a certificate? This is a physical file. I assume I then put it under RetailSDK\BuildTools and then select it in package.appxmanifest properties under the packaging tab, Correct? As well as emailing the file to the IT department to install it on each local machine.
Currently the following global settings are still with their default values except for the version number I had to change:
***
<AssemblyNamePrefix Condition="'$(AssemblyNamePrefix)' == ''">Contoso</AssemblyNamePrefix>
<CustomAssemblyVersion Condition="'$(CustomAssemblyVersion)' == ''">10.0.7.0</CustomAssemblyVersion>
<CustomVersion Condition="'$(CustomVersion)' == ''">10.0.7.1</CustomVersion>
<CustomName Condition="'$(CustomName)' == ''">Contoso Retail Customization</CustomName>
<CustomDescription Condition="'$(CustomDescription)' == ''">Contoso Retail Customization</CustomDescription>
<CustomPublisher Condition="'$(CustomPublisher)' == ''">CN=Contoso Ltd.</CustomPublisher>
<CustomPublisherDisplayName Condition="'$(CustomPublisherDisplayName)' == ''">Contoso Ltd.</CustomPublisherDisplayName>
<CustomCopyright Condition="'$(CustomCopyright)' == ''">Copyright © 2016</CustomCopyright>
***
If I change the publisher name then I assume the certificate under RetailSDK\BuildTools will not be valid anymore, correct?
Also why did the MSBuild not put the certificate in the deployable package because it is under retailSDK\BuildTools by default. Or is it by design that it should not be part of the deployable package but need to be put in place manually on the local machines for security reasons?
If I can keep using this certificate in development, sandbox and production, will the certificate change with each upgrade of the RetailSDK?