Microsoft Teams Connection
See the Connector Marketplace topic. Please request your administrator to start a trial or subscribe to the Premium Microsoft Teams connector.
Microsoft Teams fosters a collaborative environment, enhancing team communication and productivity.
This topic describes how to authenticate to Microsoft Teams and configure any necessary connection properties in the Microsoft Teams connection connector.
Connection Configuration
Each connection property available in the Microsoft Teams connector is explained below.
Connection Name
The name of the connection to be created should be provided. This is the name that will display on the list of available connections.
Auth Scheme
The type of authentication to use when connecting to Microsoft Teams.
Possible Values:
AzureAD: Set this to perform Azure Active Directory OAuth authentication.
AzureServicePrincipal: Set this to authenticate as an Azure Service Principal using a Client Secret.
AzureServicePrincipalCert: Set this to authenticate as an Azure Service Principal using a Certificate.
AzureMSI: Set this to automatically obtain Managed Service Identity credentials when running on an Azure VM.
If Auth Scheme is set to AzureAD or AzureServicePrincipal below fields will appear:
Client ID
The client Id assigned when you register your application with an OAuth authorization server.
Client Secret
The client secret assigned when you register your application with an OAuth authorization server.
Refresh Token
The OAuth refresh token for the corresponding OAuth access token.
If Auth Scheme is set to AzureServicePrincipalCert below fields will appear:
OAuth JWT Cert
The name of the certificate store for the client certificate.
OAuthJWTCert is used in conjunction with the OAuthJWTCertSubject field in order to specify client certificates. If OAuthJWTCert has a value, and OAuthJWTCertSubject is set, a search for a certificate is initiated.
Certificate Type
The type of key store containing the JWT Certificate.
This property can take one of the following values:
PFX: The certificate store is the name of a PFX (PKCS12) file containing certificates.
PFXBLOB: The certificate store is a string (base-64-encoded) representing a certificate store in PFX (PKCS12) format.
JKSFILE: The certificate store is the name of a Java key store (JKS) file containing certificates. Note: this store type is only available in Java.
JKSBLOB: The certificate store is a string (base-64-encoded) representing a certificate store in Java key store (JKS) format. Note: this store type is only available in Java.
PEMKEY_FILE: The certificate store is the name of a PEM-encoded file that contains a private key and an optional certificate.
PEMKEY_BLOB: The certificate store is a string (base64-encoded) that contains a private key and an optional certificate.
PUBLIC_KEY_FILE: The certificate store is the name of a file that contains a PEM- or DER-encoded public key certificate.
PUBLIC_KEY_BLOB: The certificate store is a string (base-64-encoded) that contains a PEM- or DER-encoded public key certificate.
SSHPUBLIC_KEY_FILE: The certificate store is the name of a file that contains an SSH-style public key.
SSHPUBLIC_KEY_BLOB: The certificate store is a string (base-64-encoded) that contains an SSH-style public key.
P7BFILE: The certificate store is the name of a PKCS7 file containing certificates.
PPKFILE: The certificate store is the name of a file that contains a PPK (PuTTY Private Key).
XMLFILE: The certificate store is the name of a file that contains a certificate in XML format.
XMLBLOB: The certificate store is a string that contains a certificate in XML format.
OAuth JWT Cert Subject
The subject of the OAuth JWT certificate.
When loading a certificate the subject is used to locate the certificate in the store.
If an exact match is not found, the store is searched for subjects containing the value of the property.
If a match is still not found, the property is set to an empty string, and no certificate is selected.
The special value “*” picks the first certificate in the certificate store.
The certificate subject is a comma separated list of distinguished name fields and values. For instance “CN=www.server.com, OU=test, C=US, E=support@gathr.one”. Common fields and their meanings are displayed below.
Field | Meaning |
---|---|
CN | Common Name. This is commonly a host name like www.server.com . |
O | Organization |
OU | Organizational Unit |
L | Locality |
S | State |
C | Country |
E | Email Address |
Certificate Password
The password for the OAuth JWT certificate.
If the certificate store is of a type that requires a password, this property is used to specify that password in order to open the certificate store.
Upload OAuthJWTCert File
Option to upload the OAuth JWT certificate file.
Azure Tenant
The Microsoft Online tenant being used to access data. For instance, contoso.onmicrosoft.com. Alternatively, specify the tenant Id. This value is the directory Id in the Azure Portal > Azure Active Directory > Properties.
Typically it is not necessary to specify the Tenant. This can be automatically determined by Microsoft when using the OAuthGrantType set to CODE (default). However, it may fail in the case that the user belongs to multiple tenants. For instance, if an Admin of domain A invites a user of domain B to be a guest user. The user will now belong to both tenants. It is a good practice to specify the Tenant, although in general things should normally work without having to specify it.
The AzureTenant becomes necessary when configuring OAuthGrantType as CLIENT. In this scenario, there is no user context, and the app’s credentials are used. Even though Microsoft allows obtaining client credentials without specifying the Tenant, there is a lower likelihood of obtaining credentials specific to the desired domain. Therefore, explicitly stating AzureTenant is required for all client credentials connections to ensure the correct credentials are obtained for the intended domain.
Azure Environment
The Azure Environment to use when establishing a connection.
The available values are:
GLOBAL
CHINA
USGOVT
USGOVTDOD
In most cases, leaving the environment set to global will work. However, if your Azure Account has been added to a different environment, the AzureEnvironment may be used to specify which environment.
Enable SSL
Option to enable SSL. This field sets whether the connector will attempt to negotiate TLS/SSL connections to the server. By default, the connector checks the server’s certificate against the system’s trusted certificate store.
SSL Client Certificate
The TLS/SSL client certificate store for SSL Client Authentication (2-way SSL).
The name of the certificate store for the client certificate.
If the store is password protected, specify the password in the SSL Client Cert Password field.
Designations of certificate stores are platform-dependent.
The following are designations of the most common User and Machine certificate stores in Windows:
Certificate Designation | Description |
---|---|
MY | A certificate store holding personal certificates with their associated private keys. |
CA | Certifying authority certificates. |
ROOT | Root certificates. |
SPC | Software publisher certificates. |
In Java, the certificate store normally is a file containing certificates and optional private keys.
When the certificate store type is PFXFile, this property must be set to the name of the file.
When the type is PFXBlob, the property must be set to the binary contents of a PFX file (for example, PKCS12 certificate store).
SSL Client Cert Type
The type of key store containing the TLS/SSL client certificate.
This property can be set to one of the following values:
Property Value | Description |
---|---|
USER - default | For Windows, this specifies that the certificate store is a certificate store owned by the current user. Note that this store type is not available in Java. |
MACHINE | For Windows, this specifies that the certificate store is a machine store. Note that this store type is not available in Java. |
PFXFILE | The certificate store is the name of a PFX (PKCS12) file containing certificates. |
PFXBLOB | The certificate store is a string (base-64-encoded) representing a certificate store in PFX (PKCS12) format. |
JKSFILE | The certificate store is the name of a Java key store (JKS) file containing certificates. Note that this store type is only available in Java. |
JKSBLOB | The certificate store is a string (base-64-encoded) representing a certificate store in JKS format. Note that this store type is only available in Java. |
PEMKEY_FILE | The certificate store is the name of a PEM-encoded file that contains a private key and an optional certificate. |
PEMKEY_BLOB | The certificate store is a string (base64-encoded) that contains a private key and an optional certificate. |
PUBLIC_KEY_FILE | The certificate store is the name of a file that contains a PEM- or DER-encoded public key certificate. |
PUBLIC_KEY_BLOB | The certificate store is a string (base-64-encoded) that contains a PEM- or DER-encoded public key certificate. |
SSHPUBLIC_KEY_FILE | The certificate store is the name of a file that contains an SSH-style public key. |
SSHPUBLIC_KEY_BLOB | The certificate store is a string (base-64-encoded) that contains an SSH-style public key. |
P7BFILE | The certificate store is the name of a PKCS7 file containing certificates. |
PPKFILE | The certificate store is the name of a file that contains a PuTTY Private Key (PPK). |
XMLFILE | The certificate store is the name of a file that contains a certificate in XML format. |
XMLBLOB | The certificate store is a string that contains a certificate in XML format. |
SSL Client Cert Password
If the certificate store is of a type that requires a password, this property is used to specify that password to open the certificate store.
SSL Client Cert Subject
The subject of the TLS/SSL client certificate.
When loading a certificate the subject is used to locate the certificate in the store.
If an exact match is not found, the store is searched for subjects containing the value of the property. If a match is still not found, the property is set to an empty string, and no certificate is selected.
The special value “*” picks the first certificate in the certificate store.
The certificate subject is a comma separated list of distinguished name fields and values. For example, “CN=www.server.com, OU=test, C=US, E=support@company.com”.
The common fields and their meanings are shown below.
Field | Meaning |
---|---|
CN | Common Name. This is commonly a host name like www.server.com. |
O | Organization |
OU | Organizational Unit |
L | Locality |
S | State |
C | Country |
E | Email Address |
Upload Keystore File
If SSL is enabled, a keystore file has to be uploaded using this option.
Advanced Configurations
This section contains advanced configuration parameters.
IncludeAllGroups
A boolean indicating if you would like to list all the groups in your organizations or only groups the logged in user is member of.
Add Configuration: Additional properties can be added using this option as key-value pairs.
After entering all the details, click on the TEST button.
If the connection service identification and authentication details are provided correctly, a success message stating “connection available” is generated.
Click on the CREATE button to save the changes.
If the details are incorrect or the server is down, you will get a message “Connection unavailable”.
If you have any feedback on Gathr documentation, please email us!