Я создаю POC-приложение, используя новый MIP SDK на C #.Одним из требований является использование имени пользователя / пароля, хранящихся на сервере.Все примеры приложений используют вход в OAuth2 с всплывающим окном для ввода учетных данных пользователя.Я считаю, что правильная реализация IAuthDelegate может помочь, но встроенная документация не сильно помогла.в моем методе init двигателя я следую примеру SDK
var authDelegate = new AuthDelegateImplementation(appInfo);
//Initialize and instantiate the File Profile
//Create the FileProfileSettings object
var profileSettings = new FileProfileSettings(
path: "mip_data",
useInMemoryStorage: true,
authDelegate: authDelegate,
consentDelegate: new ConsentDelegateImplementation(),
applicationInfo: appInfo,
minimumLogLevel: LogLevel.Trace);
Console.WriteLine("Load the Profile async and wait for the result");
var fileProfile = Task.Run(async () => await MIP.LoadFileProfileAsync(profileSettings)).Result;
и AuthDelegateImplementation, имеющему следующий код
public string AcquireToken(Identity identity, string authority, string resource)
{
AuthenticationContext authContext = new AuthenticationContext(authority);
AuthenticationResult result = authContext.AcquireTokenAsync(
resource: resource,
clientId: _appInfo.ApplicationId,
redirectUri: new Uri(redirectUri),
parameters: new PlatformParameters(PromptBehavior.Auto, null),
userId: UserIdentifier.AnyUser).Result;
return result.AccessToken;
}
Спасибо за вашу помощь, C.