IntegrationAccountAgreementArgs

data class IntegrationAccountAgreementArgs(val agreementName: Output<String>? = null, val agreementType: Output<AgreementType>? = null, val content: Output<AgreementContentArgs>? = null, val guestIdentity: Output<BusinessIdentityArgs>? = null, val guestPartner: Output<String>? = null, val hostIdentity: Output<BusinessIdentityArgs>? = null, val hostPartner: Output<String>? = null, val integrationAccountName: Output<String>? = null, val location: Output<String>? = null, val metadata: Output<Any>? = null, val resourceGroupName: Output<String>? = null, val tags: Output<Map<String, String>>? = null) : ConvertibleToJava<IntegrationAccountAgreementArgs>

The integration account agreement. API Version: 2019-05-01.

Example Usage

Create or update an agreement

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var integrationAccountAgreement = new AzureNative.Logic.IntegrationAccountAgreement("integrationAccountAgreement", new()
{
AgreementName = "testAgreement",
AgreementType = AzureNative.Logic.AgreementType.AS2,
Content = new AzureNative.Logic.Inputs.AgreementContentArgs
{
AS2 = new AzureNative.Logic.Inputs.AS2AgreementContentArgs
{
ReceiveAgreement = new AzureNative.Logic.Inputs.AS2OneWayAgreementArgs
{
ProtocolSettings = new AzureNative.Logic.Inputs.AS2ProtocolSettingsArgs
{
AcknowledgementConnectionSettings = new AzureNative.Logic.Inputs.AS2AcknowledgementConnectionSettingsArgs
{
IgnoreCertificateNameMismatch = true,
KeepHttpConnectionAlive = true,
SupportHttpStatusCodeContinue = true,
UnfoldHttpHeaders = true,
},
EnvelopeSettings = new AzureNative.Logic.Inputs.AS2EnvelopeSettingsArgs
{
AutogenerateFileName = true,
FileNameTemplate = "Test",
MessageContentType = "text/plain",
SuspendMessageOnFileNameGenerationError = true,
TransmitFileNameInMimeHeader = true,
},
ErrorSettings = new AzureNative.Logic.Inputs.AS2ErrorSettingsArgs
{
ResendIfMDNNotReceived = true,
SuspendDuplicateMessage = true,
},
MdnSettings = new AzureNative.Logic.Inputs.AS2MdnSettingsArgs
{
DispositionNotificationTo = "http://tempuri.org",
MdnText = "Sample",
MicHashingAlgorithm = "SHA1",
NeedMDN = true,
ReceiptDeliveryUrl = "http://tempuri.org",
SendInboundMDNToMessageBox = true,
SendMDNAsynchronously = true,
SignMDN = true,
SignOutboundMDNIfOptional = true,
},
MessageConnectionSettings = new AzureNative.Logic.Inputs.AS2MessageConnectionSettingsArgs
{
IgnoreCertificateNameMismatch = true,
KeepHttpConnectionAlive = true,
SupportHttpStatusCodeContinue = true,
UnfoldHttpHeaders = true,
},
SecuritySettings = new AzureNative.Logic.Inputs.AS2SecuritySettingsArgs
{
EnableNRRForInboundDecodedMessages = true,
EnableNRRForInboundEncodedMessages = true,
EnableNRRForInboundMDN = true,
EnableNRRForOutboundDecodedMessages = true,
EnableNRRForOutboundEncodedMessages = true,
EnableNRRForOutboundMDN = true,
OverrideGroupSigningCertificate = false,
},
ValidationSettings = new AzureNative.Logic.Inputs.AS2ValidationSettingsArgs
{
CheckCertificateRevocationListOnReceive = true,
CheckCertificateRevocationListOnSend = true,
CheckDuplicateMessage = true,
CompressMessage = true,
EncryptMessage = false,
EncryptionAlgorithm = "AES128",
InterchangeDuplicatesValidityDays = 100,
OverrideMessageProperties = true,
SignMessage = false,
},
},
ReceiverBusinessIdentity = new AzureNative.Logic.Inputs.BusinessIdentityArgs
{
Qualifier = "ZZ",
Value = "ZZ",
},
SenderBusinessIdentity = new AzureNative.Logic.Inputs.BusinessIdentityArgs
{
Qualifier = "AA",
Value = "AA",
},
},
SendAgreement = new AzureNative.Logic.Inputs.AS2OneWayAgreementArgs
{
ProtocolSettings = new AzureNative.Logic.Inputs.AS2ProtocolSettingsArgs
{
AcknowledgementConnectionSettings = new AzureNative.Logic.Inputs.AS2AcknowledgementConnectionSettingsArgs
{
IgnoreCertificateNameMismatch = true,
KeepHttpConnectionAlive = true,
SupportHttpStatusCodeContinue = true,
UnfoldHttpHeaders = true,
},
EnvelopeSettings = new AzureNative.Logic.Inputs.AS2EnvelopeSettingsArgs
{
AutogenerateFileName = true,
FileNameTemplate = "Test",
MessageContentType = "text/plain",
SuspendMessageOnFileNameGenerationError = true,
TransmitFileNameInMimeHeader = true,
},
ErrorSettings = new AzureNative.Logic.Inputs.AS2ErrorSettingsArgs
{
ResendIfMDNNotReceived = true,
SuspendDuplicateMessage = true,
},
MdnSettings = new AzureNative.Logic.Inputs.AS2MdnSettingsArgs
{
DispositionNotificationTo = "http://tempuri.org",
MdnText = "Sample",
MicHashingAlgorithm = "SHA1",
NeedMDN = true,
ReceiptDeliveryUrl = "http://tempuri.org",
SendInboundMDNToMessageBox = true,
SendMDNAsynchronously = true,
SignMDN = true,
SignOutboundMDNIfOptional = true,
},
MessageConnectionSettings = new AzureNative.Logic.Inputs.AS2MessageConnectionSettingsArgs
{
IgnoreCertificateNameMismatch = true,
KeepHttpConnectionAlive = true,
SupportHttpStatusCodeContinue = true,
UnfoldHttpHeaders = true,
},
SecuritySettings = new AzureNative.Logic.Inputs.AS2SecuritySettingsArgs
{
EnableNRRForInboundDecodedMessages = true,
EnableNRRForInboundEncodedMessages = true,
EnableNRRForInboundMDN = true,
EnableNRRForOutboundDecodedMessages = true,
EnableNRRForOutboundEncodedMessages = true,
EnableNRRForOutboundMDN = true,
OverrideGroupSigningCertificate = false,
},
ValidationSettings = new AzureNative.Logic.Inputs.AS2ValidationSettingsArgs
{
CheckCertificateRevocationListOnReceive = true,
CheckCertificateRevocationListOnSend = true,
CheckDuplicateMessage = true,
CompressMessage = true,
EncryptMessage = false,
EncryptionAlgorithm = "AES128",
InterchangeDuplicatesValidityDays = 100,
OverrideMessageProperties = true,
SignMessage = false,
},
},
ReceiverBusinessIdentity = new AzureNative.Logic.Inputs.BusinessIdentityArgs
{
Qualifier = "AA",
Value = "AA",
},
SenderBusinessIdentity = new AzureNative.Logic.Inputs.BusinessIdentityArgs
{
Qualifier = "ZZ",
Value = "ZZ",
},
},
},
},
GuestIdentity = new AzureNative.Logic.Inputs.BusinessIdentityArgs
{
Qualifier = "AA",
Value = "AA",
},
GuestPartner = "GuestPartner",
HostIdentity = new AzureNative.Logic.Inputs.BusinessIdentityArgs
{
Qualifier = "ZZ",
Value = "ZZ",
},
HostPartner = "HostPartner",
IntegrationAccountName = "testIntegrationAccount",
Location = "westus",
Metadata = null,
ResourceGroupName = "testResourceGroup",
Tags =
{
{ "IntegrationAccountAgreement", "<IntegrationAccountAgreementName>" },
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.logic.IntegrationAccountAgreement;
import com.pulumi.azurenative.logic.IntegrationAccountAgreementArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var integrationAccountAgreement = new IntegrationAccountAgreement("integrationAccountAgreement", IntegrationAccountAgreementArgs.builder()
.agreementName("testAgreement")
.agreementType("AS2")
.content(Map.of("aS2", Map.ofEntries(
Map.entry("receiveAgreement", Map.ofEntries(
Map.entry("protocolSettings", Map.ofEntries(
Map.entry("acknowledgementConnectionSettings", Map.ofEntries(
Map.entry("ignoreCertificateNameMismatch", true),
Map.entry("keepHttpConnectionAlive", true),
Map.entry("supportHttpStatusCodeContinue", true),
Map.entry("unfoldHttpHeaders", true)
)),
Map.entry("envelopeSettings", Map.ofEntries(
Map.entry("autogenerateFileName", true),
Map.entry("fileNameTemplate", "Test"),
Map.entry("messageContentType", "text/plain"),
Map.entry("suspendMessageOnFileNameGenerationError", true),
Map.entry("transmitFileNameInMimeHeader", true)
)),
Map.entry("errorSettings", Map.ofEntries(
Map.entry("resendIfMDNNotReceived", true),
Map.entry("suspendDuplicateMessage", true)
)),
Map.entry("mdnSettings", Map.ofEntries(
Map.entry("dispositionNotificationTo", "http://tempuri.org"),
Map.entry("mdnText", "Sample"),
Map.entry("micHashingAlgorithm", "SHA1"),
Map.entry("needMDN", true),
Map.entry("receiptDeliveryUrl", "http://tempuri.org"),
Map.entry("sendInboundMDNToMessageBox", true),
Map.entry("sendMDNAsynchronously", true),
Map.entry("signMDN", true),
Map.entry("signOutboundMDNIfOptional", true)
)),
Map.entry("messageConnectionSettings", Map.ofEntries(
Map.entry("ignoreCertificateNameMismatch", true),
Map.entry("keepHttpConnectionAlive", true),
Map.entry("supportHttpStatusCodeContinue", true),
Map.entry("unfoldHttpHeaders", true)
)),
Map.entry("securitySettings", Map.ofEntries(
Map.entry("enableNRRForInboundDecodedMessages", true),
Map.entry("enableNRRForInboundEncodedMessages", true),
Map.entry("enableNRRForInboundMDN", true),
Map.entry("enableNRRForOutboundDecodedMessages", true),
Map.entry("enableNRRForOutboundEncodedMessages", true),
Map.entry("enableNRRForOutboundMDN", true),
Map.entry("overrideGroupSigningCertificate", false)
)),
Map.entry("validationSettings", Map.ofEntries(
Map.entry("checkCertificateRevocationListOnReceive", true),
Map.entry("checkCertificateRevocationListOnSend", true),
Map.entry("checkDuplicateMessage", true),
Map.entry("compressMessage", true),
Map.entry("encryptMessage", false),
Map.entry("encryptionAlgorithm", "AES128"),
Map.entry("interchangeDuplicatesValidityDays", 100),
Map.entry("overrideMessageProperties", true),
Map.entry("signMessage", false)
))
)),
Map.entry("receiverBusinessIdentity", Map.ofEntries(
Map.entry("qualifier", "ZZ"),
Map.entry("value", "ZZ")
)),
Map.entry("senderBusinessIdentity", Map.ofEntries(
Map.entry("qualifier", "AA"),
Map.entry("value", "AA")
))
)),
Map.entry("sendAgreement", Map.ofEntries(
Map.entry("protocolSettings", Map.ofEntries(
Map.entry("acknowledgementConnectionSettings", Map.ofEntries(
Map.entry("ignoreCertificateNameMismatch", true),
Map.entry("keepHttpConnectionAlive", true),
Map.entry("supportHttpStatusCodeContinue", true),
Map.entry("unfoldHttpHeaders", true)
)),
Map.entry("envelopeSettings", Map.ofEntries(
Map.entry("autogenerateFileName", true),
Map.entry("fileNameTemplate", "Test"),
Map.entry("messageContentType", "text/plain"),
Map.entry("suspendMessageOnFileNameGenerationError", true),
Map.entry("transmitFileNameInMimeHeader", true)
)),
Map.entry("errorSettings", Map.ofEntries(
Map.entry("resendIfMDNNotReceived", true),
Map.entry("suspendDuplicateMessage", true)
)),
Map.entry("mdnSettings", Map.ofEntries(
Map.entry("dispositionNotificationTo", "http://tempuri.org"),
Map.entry("mdnText", "Sample"),
Map.entry("micHashingAlgorithm", "SHA1"),
Map.entry("needMDN", true),
Map.entry("receiptDeliveryUrl", "http://tempuri.org"),
Map.entry("sendInboundMDNToMessageBox", true),
Map.entry("sendMDNAsynchronously", true),
Map.entry("signMDN", true),
Map.entry("signOutboundMDNIfOptional", true)
)),
Map.entry("messageConnectionSettings", Map.ofEntries(
Map.entry("ignoreCertificateNameMismatch", true),
Map.entry("keepHttpConnectionAlive", true),
Map.entry("supportHttpStatusCodeContinue", true),
Map.entry("unfoldHttpHeaders", true)
)),
Map.entry("securitySettings", Map.ofEntries(
Map.entry("enableNRRForInboundDecodedMessages", true),
Map.entry("enableNRRForInboundEncodedMessages", true),
Map.entry("enableNRRForInboundMDN", true),
Map.entry("enableNRRForOutboundDecodedMessages", true),
Map.entry("enableNRRForOutboundEncodedMessages", true),
Map.entry("enableNRRForOutboundMDN", true),
Map.entry("overrideGroupSigningCertificate", false)
)),
Map.entry("validationSettings", Map.ofEntries(
Map.entry("checkCertificateRevocationListOnReceive", true),
Map.entry("checkCertificateRevocationListOnSend", true),
Map.entry("checkDuplicateMessage", true),
Map.entry("compressMessage", true),
Map.entry("encryptMessage", false),
Map.entry("encryptionAlgorithm", "AES128"),
Map.entry("interchangeDuplicatesValidityDays", 100),
Map.entry("overrideMessageProperties", true),
Map.entry("signMessage", false)
))
)),
Map.entry("receiverBusinessIdentity", Map.ofEntries(
Map.entry("qualifier", "AA"),
Map.entry("value", "AA")
)),
Map.entry("senderBusinessIdentity", Map.ofEntries(
Map.entry("qualifier", "ZZ"),
Map.entry("value", "ZZ")
))
))
)))
.guestIdentity(Map.ofEntries(
Map.entry("qualifier", "AA"),
Map.entry("value", "AA")
))
.guestPartner("GuestPartner")
.hostIdentity(Map.ofEntries(
Map.entry("qualifier", "ZZ"),
Map.entry("value", "ZZ")
))
.hostPartner("HostPartner")
.integrationAccountName("testIntegrationAccount")
.location("westus")
.metadata()
.resourceGroupName("testResourceGroup")
.tags(Map.of("IntegrationAccountAgreement", "<IntegrationAccountAgreementName>"))
.build());
}
}

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:logic:IntegrationAccountAgreement <IntegrationAccountAgreementName> /subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testResourceGroup/providers/Microsoft.Logic/integrationAccounts/IntegrationAccount4533/agreements/<IntegrationAccountAgreementName>

Constructors

Link copied to clipboard
constructor(agreementName: Output<String>? = null, agreementType: Output<AgreementType>? = null, content: Output<AgreementContentArgs>? = null, guestIdentity: Output<BusinessIdentityArgs>? = null, guestPartner: Output<String>? = null, hostIdentity: Output<BusinessIdentityArgs>? = null, hostPartner: Output<String>? = null, integrationAccountName: Output<String>? = null, location: Output<String>? = null, metadata: Output<Any>? = null, resourceGroupName: Output<String>? = null, tags: Output<Map<String, String>>? = null)

Properties

Link copied to clipboard
val agreementName: Output<String>? = null

The integration account agreement name.

Link copied to clipboard
val agreementType: Output<AgreementType>? = null

The agreement type.

Link copied to clipboard
val content: Output<AgreementContentArgs>? = null

The agreement content.

Link copied to clipboard
val guestIdentity: Output<BusinessIdentityArgs>? = null

The business identity of the guest partner.

Link copied to clipboard
val guestPartner: Output<String>? = null

The integration account partner that is set as guest partner for this agreement.

Link copied to clipboard
val hostIdentity: Output<BusinessIdentityArgs>? = null

The business identity of the host partner.

Link copied to clipboard
val hostPartner: Output<String>? = null

The integration account partner that is set as host partner for this agreement.

Link copied to clipboard
val integrationAccountName: Output<String>? = null

The integration account name.

Link copied to clipboard
val location: Output<String>? = null

The resource location.

Link copied to clipboard
val metadata: Output<Any>? = null

The metadata.

Link copied to clipboard
val resourceGroupName: Output<String>? = null

The resource group name.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

The resource tags.

Functions

Link copied to clipboard
open override fun toJava(): IntegrationAccountAgreementArgs