DSCResources/MSFT_TeamsFederationConfiguration/MSFT_TeamsFederationConfiguration.schema.mof

[ClassVersion("1.0.0.4"), FriendlyName("TeamsFederationConfiguration")]
class MSFT_TeamsFederationConfiguration : OMI_BaseResource
{
    [Key, Description("Only valid value is 'Yes'."), ValueMap{"Yes"}, Values{"Yes"}] String IsSingleInstance;
    [Write, Description("When set to True users will be potentially allowed to communicate with users from other domains.")] Boolean AllowFederatedUsers;
    [Write, Description("You can safelist specific 'trial-only' tenant domains, while keeping the ExternalAccessWithTrialTenants set to Blocked. This will allow you to protect your organization against majority of tenants that don't have any paid subscriptions, while still being able to collaborate externally with those trusted trial-tenants in the list.")] String AllowedTrialTenantDomains[];
    [Write, Description("List of federated domains to allow.")] String AllowedDomains[];
    [Write, Description("List of federated domains to block.")] String BlockedDomains[];
    [Write, Description("If the BlockedDomains parameter is used, then BlockAllSubdomains can be used to activate all subdomains blocking. If the BlockedDomains parameter is ignored, then BlockAllSubdomains is also ignored. Just like for BlockedDomains, users will be disallowed from communicating with users from blocked domains. But all subdomains for domains in this list will also be blocked.")] Boolean BlockAllSubdomains;
    [Write, Description("Allows federation with people using Teams with an account that's not managed by an organization.")] Boolean AllowTeamsConsumer;
    [Write, Description("Allows people using Teams with an account that's not managed by an organization, to discover and start communication with users in your organization.")] Boolean AllowTeamsConsumerInbound;
    [Write, Description("When set to 'Enabled', security operations team will be able to add domains to the blocklist on security portal. When set to 'Disabled', security operations team will not have permissions to update the domains blocklist."), ValueMap{"Disabled","Enabled"}, Values{"Disabled","Enabled"}] String DomainBlockingForMDOAdminsInTeams;
    [Write, Description("When set to Blocked, all external access with users from Teams subscriptions that contain only trial licenses will be blocked. This means users from these trial-only tenants will not be able to reach to your users via chats, Teams calls, and meetings (using the users authenticated identity) and your users will not be able to reach users in these trial-only tenants. If this setting is set to Blocked, users from the trial-only tenant will also be removed from existing chats."), ValueMap{"Allowed","Blocked"}, Values{"Allowed","Blocked"}] String ExternalAccessWithTrialTenants;
    [Write, Description("When set to True, messages sent from discovered partners are considered unverified. That means that those messages will be delivered only if they were sent from a person who is on the recipient's Contacts list.")] Boolean TreatDiscoveredPartnersAsUnverified;
    [Write, Description("When set to True, indicates that the users homed on Skype for Business Online use the same SIP domain as users homed on the on-premises version of Skype for Business Server.")] Boolean SharedSipAddressSpace;
    [Write, Description("When set to True, Teamsconsumer have access only to external user profiles")] Boolean RestrictTeamsConsumerToExternalUserProfiles;
    [Write, Description("Credentials of the Teams Admin"), EmbeddedInstance("MSFT_Credential")] string Credential;
    [Write, Description("Id of the Azure Active Directory application to authenticate with.")] String ApplicationId;
    [Write, Description("Name of the Azure Active Directory tenant used for authentication. Format contoso.onmicrosoft.com")] String TenantId;
    [Write, Description("Thumbprint of the Azure Active Directory application's authentication certificate to use for authentication.")] String CertificateThumbprint;
    [Write, Description("Username can be made up to anything but password will be used for CertificatePassword"), EmbeddedInstance("MSFT_Credential")] String CertificatePassword;
    [Write, Description("Path to certificate used in service principal usually a PFX file.")] String CertificatePath;
    [Write, Description("Managed ID being used for authentication.")] Boolean ManagedIdentity;
    [Write, Description("Access token used for authentication.")] String AccessTokens[];
};