Microsoft.Identity.Client.PlatformsCommon.Interfaces.IPlatformProxy
interface IPlatformProxy
Common operations for extracting platform / operating system specifics.
Scope: per app
namespace Microsoft.Identity.Client.PlatformsCommon.Interfaces
{
internal interface IPlatformProxy
{
bool LegacyCacheRequiresSerialization { get; }
ICryptographyManager CryptographyManager { get; }
IPlatformLogger PlatformLogger { get; }
IOtelInstrumentation OtelInstrumentation { get; }
bool BrokerSupportsWamAccounts { get; }
IManagedIdentityKeyProvider ManagedIdentityKeyProvider { get; }
string GetDeviceModel();
string GetOperatingSystem();
string GetProcessorArchitecture();
Task<string> GetUserPrincipalNameAsync();
string GetCallingApplicationName();
string GetCallingApplicationVersion();
string GetDeviceId();
string GetDefaultRedirectUri(string clientId, bool useRecommendedRedirectUri = false);
string GetProductName();
string GetRuntimeVersion();
ILegacyCachePersistence CreateLegacyCachePersistence();
ITokenCacheAccessor CreateTokenCacheAccessor(CacheOptions accessorOptions, bool isApplicationTokenCache = false);
IWebUIFactory GetWebUiFactory(ApplicationConfiguration appConfig);
IPoPCryptoProvider GetDefaultPoPCryptoProvider();
IFeatureFlags GetFeatureFlags();
void SetFeatureFlags(IFeatureFlags featureFlags);
Task StartDefaultOsBrowserAsync(string url, bool isBrokerConfigured);
IBroker CreateBroker(ApplicationConfiguration appConfig, CoreUIParent uiParent);
IDeviceAuthManager CreateDeviceAuthManager();
bool CanBrokerSupportSilentAuth();
IMsalHttpClientFactory CreateDefaultHttpClientFactory();
}
}