diff --git a/src/Services/Identity/Identity.API/Certificate/Certificate.cs b/src/Services/Identity/Identity.API/Certificate/Certificate.cs
new file mode 100644
index 000000000..a811641d7
--- /dev/null
+++ b/src/Services/Identity/Identity.API/Certificate/Certificate.cs
@@ -0,0 +1,36 @@
+// Copyright (c) Brock Allen & Dominick Baier. All rights reserved.
+// Licensed under the Apache License, Version 2.0. See LICENSE in the project root for license information.
+
+using System.IO;
+using System.Reflection;
+using System.Security.Cryptography.X509Certificates;
+
+namespace Identity.API.Certificate
+{
+ static class Certificate
+ {
+ public static X509Certificate2 Get()
+ {
+ var assembly = typeof(Certificate).GetTypeInfo().Assembly;
+ var names = assembly.GetManifestResourceNames();
+ using (var stream = assembly.GetManifestResourceStream("Identity.API.Certificate.idsrv3test.pfx"))
+ {
+ return new X509Certificate2(ReadStream(stream), "idsrv3test");
+ }
+ }
+
+ private static byte[] ReadStream(Stream input)
+ {
+ byte[] buffer = new byte[16 * 1024];
+ using (MemoryStream ms = new MemoryStream())
+ {
+ int read;
+ while ((read = input.Read(buffer, 0, buffer.Length)) > 0)
+ {
+ ms.Write(buffer, 0, read);
+ }
+ return ms.ToArray();
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/Services/Identity/Identity.API/Certificate/idsrv3test.pfx b/src/Services/Identity/Identity.API/Certificate/idsrv3test.pfx
new file mode 100644
index 000000000..0247dea03
Binary files /dev/null and b/src/Services/Identity/Identity.API/Certificate/idsrv3test.pfx differ
diff --git a/src/Services/Identity/Identity.API/Identity.API.csproj b/src/Services/Identity/Identity.API/Identity.API.csproj
index d619e4a21..2a1198cec 100644
--- a/src/Services/Identity/Identity.API/Identity.API.csproj
+++ b/src/Services/Identity/Identity.API/Identity.API.csproj
@@ -12,7 +12,7 @@
$(PackageTargetFallback);dotnet5.6;portable-net45+win8
..\..\..\..\docker-compose.dcproj
-
+
@@ -57,6 +57,10 @@
+
+
+
+
diff --git a/src/Services/Identity/Identity.API/Startup.cs b/src/Services/Identity/Identity.API/Startup.cs
index 666ee67b9..a58b5a6d9 100644
--- a/src/Services/Identity/Identity.API/Startup.cs
+++ b/src/Services/Identity/Identity.API/Startup.cs
@@ -18,6 +18,7 @@ using System.Threading;
using Microsoft.eShopOnContainers.Services.Catalog.API.Infrastructure;
using Microsoft.AspNetCore.Identity;
using Microsoft.Extensions.HealthChecks;
+using Identity.API.Certificate;
namespace eShopOnContainers.Identity
{
@@ -75,7 +76,7 @@ namespace eShopOnContainers.Identity
// Adds IdentityServer
services.AddIdentityServer(x => x.IssuerUri = "null")
- .AddTemporarySigningCredential()
+ .AddSigningCredential(Certificate.Get())
.AddInMemoryScopes(Config.GetScopes())
.AddInMemoryClients(Config.GetClients(clientUrls))
.AddAspNetIdentity()