Esempio n. 1
0
        public void OnlyPackageAuditRecordsWillBeSaved(AuditRecord record, bool expectedResult)
        {
            // Arrange
            CloudBlobContainer nullBlobContainer = null;
            var service = new CloudAuditingService(nullBlobContainer, AuditActor.GetCurrentMachineActorAsync);

            // Act + Assert
            Assert.Equal<bool>(expectedResult, service.RecordWillBePersisted(record));
        }
Esempio n. 2
0
        public void CloudAuditServiceObfuscateAuditRecord()
        {
            // Arrange
            CloudBlobContainer nullBlobContainer = null;
            var service = new CloudAuditingService(nullBlobContainer, AuditActor.GetCurrentMachineActorAsync);

            AuditActor onBehalfOf = new AuditActor("machineName", "3.3.3.3", "userName1", "NoAuthentication", "someKey", DateTime.Now, null);
            AuditActor auditActor = new AuditActor("machineName", "2.2.2.2", "userName1", "NoAuthentication", "someKey", DateTime.Now, onBehalfOf);

            Package p = new Package()
            {
                User = new User("userName"),
                UserKey = 1,
                PackageRegistration = new PackageRegistration()
                {
                    Id = "regId"
                }
            };
            PackageAuditRecord packageAuditRecord = new PackageAuditRecord(p, AuditedPackageAction.Create);

            // Act 
            var auditEntry = service.RenderAuditEntry(new AuditEntry(packageAuditRecord, auditActor));

            // Assert
            var entry = (JObject)JsonConvert.DeserializeObject(auditEntry);

            var record = entry["Record"];
            var actor = entry["Actor"];

            Assert.Equal("-1", record["PackageRecord"]["UserKey"].ToString());
            Assert.Equal(string.Empty, record["PackageRecord"]["FlattenedAuthors"].ToString());
            Assert.Equal("ObfuscatedUserName", actor["UserName"].ToString());
            Assert.Equal("2.2.2.0", actor["MachineIP"].ToString());
            Assert.Equal("ObfuscatedUserName", actor["OnBehalfOf"]["UserName"].ToString());
            Assert.Equal("3.3.3.0", actor["OnBehalfOf"]["MachineIP"].ToString());
        }
Esempio n. 3
0
 internal static async Task<Uri> SaveAuditRecord(CloudStorageAccount storage, AuditRecord auditRecord)
 {
     string localIP = await AuditActor.GetLocalIP();
     CloudAuditingService audit = new CloudAuditingService(
         Environment.MachineName,
         localIP,
         storage.CreateCloudBlobClient().GetContainerReference("auditing"),
         onBehalfOfThunk: null);
     return await audit.SaveAuditRecord(auditRecord);
 }