示例#1
0
 public IEnumerable <ClientCredentials> GetClientCredentials(IEnumerable <ClientData> clients, Uri identityProvider)
 {
     return(from client in clients
            let keyFileName = Path.Combine(StorePath, "private", $"{client.Id}.key")
                              where _environment.FileSystem.FileExists(keyFileName)
                              let keyPairData = PrivateKey.ToSecureString(PrivateKey.ReadFile(keyFileName, _environment.FileSystem))
                                                select new ClientCredentials(client.Id, keyPairData, identityProvider, _configName));
 }
        public SecureString GetSystemClientPrivateKey()
        {
            var applicationDataPath =
                Path.Combine(System.Environment.GetFolderPath(System.Environment.SpecialFolder.CommonApplicationData), "eryph");

            var privateKeyPath = Path.Combine(applicationDataPath,
                                              $@"{_identityProviderName}{Path.DirectorySeparatorChar}private{Path.DirectorySeparatorChar}clients{Path.DirectorySeparatorChar}system-client.key");

            return(PrivateKey.ToSecureString(PrivateKey.ReadFile(privateKeyPath, Environment.FileSystem)));
        }
        public void Read_return_KeyPair()
        {
            var fileSystemMock = new Mock <IFileSystem>(MockBehavior.Strict);

            fileSystemMock.Setup(x => x.OpenText(It.IsAny <string>())).Returns(new StringReader(TestData.PrivateKeyFileString));

            var keyPair = PrivateKey.ReadFile(null, fileSystemMock.Object);

            Assert.NotNull(keyPair);
        }