in SfB Trusted Application/AzureBaseApplication.cs [31:78]
public async Task InitializeApplicationEndpointAsync(
string discoverUri,
string applicationEndpointUri,
string callbackUriFormat,
string resourcesUriFormat,
string aadClientId,
string aadClientSecret,
string aadAuthorityUri,
string aadCertThumbprint,
string instanceId,
bool logFullHttpRequestResponse)
{
this.InstanceId = instanceId;
this.ResourceUriFormat = resourcesUriFormat;
this.CallbackUriFormat = callbackUriFormat;
var logger = IOCHelper.Resolve<IPlatformServiceLogger>();
logger.HttpRequestResponseNeedsToBeLogged = logFullHttpRequestResponse;
ClientPlatformSettings platformSettings;
if (aadClientSecret.Length > 0) {
// AAD auth to app using client secret
platformSettings = new ClientPlatformSettings(
new System.Uri(discoverUri),
Guid.Parse(aadClientId),
null,
aadClientSecret
);
}
else
{
// AAD auth to app using cert
platformSettings = new ClientPlatformSettings(
new System.Uri(discoverUri),
Guid.Parse(aadClientId),
aadCertThumbprint
);
}
var platform = new ClientPlatform(platformSettings, logger);
var endpointSettings = new ApplicationEndpointSettings(new SipUri(applicationEndpointUri));
ApplicationEndpoint = new ApplicationEndpoint(platform, endpointSettings, null);
var loggingContext = new LoggingContext(Guid.NewGuid());
await ApplicationEndpoint.InitializeAsync(loggingContext).ConfigureAwait(false);
await ApplicationEndpoint.InitializeApplicationAsync(loggingContext).ConfigureAwait(false);
}