public async Task GenerateAsync(int count)
        {
            var authentication = await this.cremaHost.LoginRandomAsync(Authority.Admin);

            var dataBaseContext = cremaHost.GetService(typeof(IDataBaseContext)) as IDataBaseContext;

            for (var i = 0; i < count; i++)
            {
                var dataBaseName = await dataBaseContext.GenerateNewDataBaseNameAsync(RandomUtility.NextName());

                var comment = RandomUtility.NextString();
                var item    = await dataBaseContext.AddNewDataBaseAsync(authentication, dataBaseName, comment);
            }
            await cremaHost.LogoutAsync(authentication);
        }
        public static async Task <Authentication> LoginAgainAsync(this ICremaHost cremaHost, Authentication authentication)
        {
            if (cremaHost.GetService(typeof(IUserCollection)) is IUserCollection userCollection)
            {
                var user = await userCollection.GetUserAsync(authentication.ID);

                var name     = user.ID;
                var password = user.GetPassword();
                await cremaHost.LogoutAsync(authentication);

                var token = await cremaHost.LoginAsync(name, password);

                return(await cremaHost.AuthenticateAsync(token));
            }
            throw new NotImplementedException();
        }