public void FeilDokumentpakkeIdITransportkvitteringSkalKasteSecurityException()
            {
                //Arrange
                const string dokumentPakkeIdRequest =
                    "*****@*****.**";
                const string dokumentPakkeIdRespons =
                    "*****@*****.**";

                AddRsaSha256AlgorithmToCryptoConfig();

                var miljø = Miljø.FunksjoneltTestmiljø;
                var sendtMeldingXmlDocument =
                    XmlUtility.TilXmlDokument(SendtMelding.FunksjoneltTestMiljøMedInput());

                var mottattTransportKvittering =
                    XmlUtility.TilXmlDokument(
                        TransportKvittering.TransportOkKvittertingFunksjoneltTestmiljøMedInput(dokumentPakkeIdRespons));
                var responsvalidator = new Responsvalidator(sendtMeldingXmlDocument,
                                                            mottattTransportKvittering, miljø.Sertifikatkjedevalidator);

                var guidUtility = new GuidUtility
                {
                    BinarySecurityTokenId = "X509-513ffecb-cd7e-4bb3-a4c5-47eff314683f",
                    BodyId          = "soapBody",
                    DokumentpakkeId = dokumentPakkeIdRequest,
                    EbMessagingId   = "id-68ae7123-bf5c-4d15-835c-4a6b91106e77",
                    StandardBusinessDocumentHeaderId = "388214db-29cc-43c7-9543-877e017e5bb4",
                    TimestampId = "TS-76740c34-88d2-4bb6-82d2-9e9f0e474087"
                };

                //Act
                responsvalidator.ValiderTransportkvittering(guidUtility);

                //Assert
            }
            public void FeilSecurityBinaryITransportKvitteringSkalKasteException()
            {
                //Arrange
                AddRsaSha256AlgorithmToCryptoConfig();

                //h i slutten er byttet ut med b
                const string korruptSecurityBinaryIRespons =
                    "MIIE7jCCA9agAwIBAgIKGBj1bv99Jpi+EzANBgkqhkiG9w0BAQsFADBRMQswCQYDVQQGEwJOTzEdMBsGA1UECgwUQnV5cGFzcyBBUy05ODMxNjMzMjcxIzAhBgNVBAMMGkJ1eXBhc3MgQ2xhc3MgMyBUZXN0NCBDQSAzMB4XDTE0MDQyNDEyMzExMVoXDTE3MDQyNDIxNTkwMFowVTELMAkGA1UEBhMCTk8xGDAWBgNVBAoMD1BPU1RFTiBOT1JHRSBBUzEYMBYGA1UEAwwPUE9TVEVOIE5PUkdFIEFTMRIwEAYDVQQFEwk5ODQ2NjExODUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDLTnQryf2bmiyQ9q3ylQ6xMl7EhGIbjuziXkRTfL+M94m3ceAiko+r2piefKCiquLMK4j+UDcOapUtLC4dT4c6GhRH4FIOEn5aNS2I/njTenBypWka/VEhQUj7zvIh5G4UXIDIXYvLd7gideeMtkX24KUh2XVlh+PcqLGHirqBwVfFiTn5SKhr/ojhYYEb2xxTk3AY9nLd1MMffKQwUWmfoTos4scREYGI2R2vWxKWPcDqk+jig2DISWSJSuerz3HMYAAmp+Gjt0oFJNiyOFaFyGwT3DvqwOMQWwWXdmLh1NxMgTpghXAaXae76ucm9GDQ9E7ytf+JA096RWoi+5GtAgMBAAGjggHCMIIBvjAJBgNVHRMEAjAAMB8GA1UdIwQYMBaAFD+u9XgLkqNwIDVfWvr3JKBSAfBBMB0GA1UdDgQWBBTVyVLqcjWf1Qd0gsmCTrhXiWeqVDAOBgNVHQ8BAf8EBAMCBLAwFgYDVR0gBA8wDTALBglghEIBGgEAAwIwgbsGA1UdHwSBszCBsDA3oDWgM4YxaHR0cDovL2NybC50ZXN0NC5idXlwYXNzLm5vL2NybC9CUENsYXNzM1Q0Q0EzLmNybDB1oHOgcYZvbGRhcDovL2xkYXAudGVzdDQuYnV5cGFzcy5uby9kYz1CdXlwYXNzLGRjPU5PLENOPUJ1eXBhc3MlMjBDbGFzcyUyMDMlMjBUZXN0NCUyMENBJTIwMz9jZXJ0aWZpY2F0ZVJldm9jYXRpb25MaXN0MIGKBggrBgEFBQcBAQR+MHwwOwYIKwYBBQUHMAGGL2h0dHA6Ly9vY3NwLnRlc3Q0LmJ1eXBhc3Mubm8vb2NzcC9CUENsYXNzM1Q0Q0EzMD0GCCsGAQUFBzAChjFodHRwOi8vY3J0LnRlc3Q0LmJ1eXBhc3Mubm8vY3J0L0JQQ2xhc3MzVDRDQTMuY2VyMA0GCSqGSIb3DQEBCwUAA4IBAQCmMpAGaNplOgx3b4Qq6FLEcpnMOnPlSWBC7pQEDWx6OtNUHDm56fBoyVQYKR6LuGfalnnOKuB/sGSmO3eYlh7uDK9WA7bsNU/W8ZiwYwF6PBRui2rrqYk3kj4NLTNlyh/AOO1a2FDFHu369W0zcjj5ns7qs0K3peXtLX8pVxA8RmjwdGe69P/2r6s2A5CBj7oXZJD0Yo2dJFdsZzonT900sUi+MWzlhj3LxU5/684NWc2NI6ZPof/dyYpy3K/AFzpDLWGSmaDO66hPl7EfoJxEiX0DNBaQzNIyRFPh0ir0jM+32ZQ4goR8bAtyhKeTyA/4+Qx1WQXS3wURCC0lsbMb";

                var miljø = Miljø.FunksjoneltTestmiljø;
                var sendtMeldingXmlDocument = XmlUtility.TilXmlDokument(SendtMelding.FunksjoneltTestMiljøMedInput());

                var mottattTransportKvittering =
                    XmlUtility.TilXmlDokument(
                        TransportKvittering.TransportOkKvittertingFunksjoneltTestmiljøMedInput(
                            securityBinary: korruptSecurityBinaryIRespons));
                var responsvalidator = new Responsvalidator(sendtMeldingXmlDocument,
                                                            mottattTransportKvittering, miljø.Sertifikatkjedevalidator);
                var guidUtility = new GuidUtility
                {
                    BinarySecurityTokenId = "X509-513ffecb-cd7e-4bb3-a4c5-47eff314683f",
                    BodyId          = "soapBody",
                    DokumentpakkeId = "*****@*****.**",
                    EbMessagingId   = "id-68ae7123-bf5c-4d15-835c-4a6b91106e77",
                    StandardBusinessDocumentHeaderId = "388214db-29cc-43c7-9543-877e017e5bb4",
                    TimestampId = "TS-76740c34-88d2-4bb6-82d2-9e9f0e474087"
                };

                //Act
                responsvalidator.ValiderTransportkvittering(guidUtility);

                //Assert
            }
Ejemplo n.º 3
0
        private SendtMelding SendSok(sok _sok)
        {
            Guid receiverId = Guid.Parse(config["sendToAccountId"]);                                                  // Receiver id as Guid
            Guid senderId   = Guid.Parse(config["accountId"]);                                                        // Sender id as Guid

            var konto = client.Lookup(new LookupRequest("KOMM:0825", "no.ks.fiks.gi.arkivintegrasjon.innsyn.v1", 3)); //TODO for å finne receiverId
            //Prosess også?

            var messageRequest = new MeldingRequest(
                mottakerKontoId: receiverId,
                avsenderKontoId: senderId,
                meldingType: "no.ks.fiks.gi.arkivintegrasjon.innsyn.sok.v1");                       // Message type as string
                                                                                                    //Se oversikt over meldingstyper på https://github.com/ks-no/fiks-io-meldingstype-katalog/tree/test/schema

            // Converts to arkivmelding xml
            string payload = Serialize(_sok);
            // Creates FIKS IO message
            List <IPayload> payloads = new List <IPayload>();

            payloads.Add(new StringPayload(payload, "sok.xml"));

            // Sends to FIKS IO (archive solution)
            SendtMelding msg = client.Send(messageRequest, payloads).Result;

            Console.WriteLine("Message sok " + msg.MeldingId.ToString() + " sent..." + msg.MeldingType);
            Console.WriteLine(payload);

            // TODO: Catch OnReceivedMelding so the search result may be found

            return(msg);
        }
Ejemplo n.º 4
0
        public async Task <SendtMelding> Send(MeldingRequest request, IList <IPayload> payload)
        {
            var encryptedPayload = await GetEncryptedPayload(request, payload).ConfigureAwait(false);

            var sentMessageApiModel = await _sender.Send(request.ToApiModel(), encryptedPayload)
                                      .ConfigureAwait(false);

            return(SendtMelding.FromSentMessageApiModel(sentMessageApiModel));
        }
Ejemplo n.º 5
0
        public async Task SendReturnsExpectedSentMessage()
        {
            var expectedMessage = new SendtMelding(
                Guid.NewGuid(),
                "msgType",
                Guid.NewGuid(),
                Guid.NewGuid(),
                TimeSpan.FromDays(1));
            var sut = _fixture.WithSentMessageReturned(expectedMessage).CreateSut();

            var payload = new List <IPayload>();

            payload.Add(Mock.Of <IPayload>());

            var request = _fixture.DefaultRequest;

            var result = await sut.Send(request, payload).ConfigureAwait(false);

            result.Should().Be(expectedMessage);
        }
        private bool ValiderDigestElement(string sendtMeldingDigestSti, string mottattSvarDigestSti, string id, out string sendtMeldingDigest, out string mottattSvarDigest)
        {
            sendtMeldingDigest = null;
            mottattSvarDigest  = null;

            var sendtMeldingSelectedNode = SendtMelding.SelectSingleNode(string.Format(sendtMeldingDigestSti, id), _nsMgr);

            if (sendtMeldingSelectedNode != null)
            {
                sendtMeldingDigest = sendtMeldingSelectedNode.InnerText;
            }

            var responsSelectedNode = Respons.SelectSingleNode(string.Format(mottattSvarDigestSti, id), _nsMgr);

            if (responsSelectedNode != null)
            {
                mottattSvarDigest = responsSelectedNode.InnerText;
            }

            return(sendtMeldingDigest != null && responsSelectedNode != null && sendtMeldingDigest == mottattSvarDigest);
        }
Ejemplo n.º 7
0
        public async Task SendReturnsExpectedSentMessage()
        {
            var expectedMessage = new SendtMelding(
                meldingId: Guid.NewGuid(),
                meldingType: "msgType",
                avsenderKontoId: Guid.NewGuid(),
                mottakerKontoId: Guid.NewGuid(),
                ttl: TimeSpan.FromDays(1),
                headere: null);
            var sut = _fixture.WithSentMessageReturned(expectedMessage).CreateSut();

            var payload = new List <IPayload>();

            payload.Add(Mock.Of <IPayload>());

            var request = _fixture.DefaultRequest;

            var result = await sut.Send(request, payload).ConfigureAwait(false);

            result.Should().Be(expectedMessage);
        }
Ejemplo n.º 8
0
 public FiksIOClientFixture WithSentMessageReturned(SendtMelding message)
 {
     _sendtMeldingReturn = message;
     return(this);
 }