public void HashesMustNotMatch()
        {
            // Arrange
            WopiSecurityHandler securityHandler = new WopiSecurityHandler();

            // Act
            string token1 = securityHandler.GenerateAccessToken("test.docx");
            string token2 = securityHandler.GenerateAccessToken("test.docx");

            // Assert
            Assert.AreNotEqual(token2, token1, "Hashes must not match.");
        }
        public void Generate_Simple_Hash_WithSalt()
        {
            // Arrange
            WopiSecurityHandler securityHandler = new WopiSecurityHandler();

            // Act
            string token  = securityHandler.GenerateAccessToken("test.docx");
            bool   result = securityHandler.ValidateAccessToken("test.docx", token);

            // Assert
            Assert.IsTrue(result, "Hash failed");
        }
		public void Generate_Simple_Hash_WithSalt()
		{
			// Arrange
			WopiSecurityHandler securityHandler = new WopiSecurityHandler();

			// Act
			string token = securityHandler.GenerateAccessToken("test.docx");
			bool result = securityHandler.ValidateAccessToken("test.docx", token);

			// Assert
			Assert.True(result);
		}
		public void HashesMustNotMatch()
		{
			// Arrange
			WopiSecurityHandler securityHandler = new WopiSecurityHandler();

			// Act
			string token1 = securityHandler.GenerateAccessToken("test.docx");
			string token2 = securityHandler.GenerateAccessToken("test.docx");

			// Assert
			Assert.NotEqual(token2, token1);
		}
Beispiel #5
0
        public async Task <ActionResult> Detail(string id)
        {
            WopiSecurityHandler securityHandler = new WopiSecurityHandler();

            IWopiFile file  = StorageProvider.GetWopiFile(id);
            var       token = securityHandler.GenerateAccessToken("Anonymous", file.Identifier);


            ViewData["access_token"] = securityHandler.WriteToken(token);
            //TODO: fix
            //ViewData["access_token_ttl"] = //token.ValidTo

            //http://dotnet-stuff.com/tutorials/aspnet-mvc/how-to-render-different-layout-in-asp-net-mvc


            var extension = file.Extension.TrimStart('.');

            ViewData["urlsrc"] = await UrlGenerator.GetFileUrlAsync(extension, $"{WopiOptions.Value.HostUrl}/wopi/files/{id}", WopiActionEnum.Edit);

            ViewData["favicon"] = await Discoverer.GetApplicationFavIconAsync(extension);

            return(View());
        }