예제 #1
0
        private async void GetSitecoreContent()
        {
            string instanceUrl = "https://xp930.sc";

            using (var credentials = new ScUnsecuredCredentialsProvider("admin", "b", "sitecore"))

                using (var session =
                           SitecoreSSCSessionBuilder.AuthenticatedSessionWithHost(instanceUrl)
                           .Credentials(credentials)
                           .DefaultDatabase("master")
                           .DefaultLanguage("en")
                           .MediaLibraryRoot("/sitecore/media library")
                           .MediaPrefix("~/media/")
                           .DefaultMediaResourceExtension("ashx")
                           .BuildReadonlySession())
                {
                    var             request = ItemSSCRequestBuilder.ReadItemsRequestWithPath("/sitecore/content/home").Build();
                    ScItemsResponse items   = await session.ReadItemAsync(request);

                    string fieldContent = items[0]["Text"].RawValue;
                    string itemName     = "Home Item Text";

                    var dialogBuilder = new AlertDialog.Builder(this);
                    dialogBuilder.SetTitle(itemName);
                    dialogBuilder.SetMessage(fieldContent);
                    dialogBuilder.Create().Show();
                }
        }
예제 #2
0
        public void TestPasswordStorageAllowsNullPassword()
        {
            const string login    = "******";
            const string password = null;

            using (var passwordStorage = new ScUnsecuredCredentialsProvider(login, password, "sitecore"))
            {
                Assert.AreEqual(login, passwordStorage.Username);
                Assert.AreEqual(password, passwordStorage.Password);
            }
        }
예제 #3
0
        public void TestPasswordStorageReturnsSameValues()
        {
            const string login    = "******";
            const string password = "******";

            using (var passwordStorage = new ScUnsecuredCredentialsProvider(login, password, "sitecore"))
            {
                Assert.AreEqual(login, passwordStorage.Username);
                Assert.AreEqual(password, passwordStorage.Password);
            }
        }
예제 #4
0
        public void TestPasswordStorageAllowsWhitespaceLogin()
        {
            const string login    = "******";
            const string password = "******";

            using (var passwordStorage = new ScUnsecuredCredentialsProvider(login, password, "sitecore"))
            {
                Assert.AreEqual(login, passwordStorage.Username);
                Assert.AreEqual(password, passwordStorage.Password);
            }
        }
        public void TestPasswordStorageAllowsEmptyPassword()
        {
            const string login    = "******";
            const string password = "";
            const string domain   = "sitecore";

            using (var passwordStorage = new ScUnsecuredCredentialsProvider(login, password, domain))
            {
                Assert.AreEqual(login, passwordStorage.Username);
                Assert.AreEqual(password, passwordStorage.Password);
            }
        }
        private async void Authenticate()
        {
            var instanceUrl = this.instanceUrlField.Text;
            var login       = this.loginField.Text;
            var password    = this.passwordField.Text;
            var site        = this.siteField.Text;

            if (string.IsNullOrEmpty(instanceUrl))
            {
                Toast.MakeText(this, "Please provide instance url", ToastLength.Long).Show();
                return;
            }

            if (string.IsNullOrEmpty(login) && string.IsNullOrEmpty(password))
            {
                Toast.MakeText(this, "Please provide both login and password", ToastLength.Long).Show();
                return;
            }

            try
            {
                using (var credentials = new ScUnsecuredCredentialsProvider(login, password, site))
                    using (var session = SitecoreSSCSessionBuilder.AuthenticatedSessionWithHost(instanceUrl)
                                         .Credentials(credentials)
                                         .BuildReadonlySession())
                    {
                        this.SetProgressBarIndeterminateVisibility(true);

                        var response = await session.AuthenticateAsync();

                        this.SetProgressBarIndeterminateVisibility(false);
                        if (response.IsSuccessful)
                        {
                            DialogHelper.ShowSimpleDialog(this, "Success", "This user exists");
                        }
                        else
                        {
                            DialogHelper.ShowSimpleDialog(this, "Failed", "This user doesn't exist");
                        }
                    }
            }
            catch (System.Exception exception)
            {
                this.SetProgressBarIndeterminateVisibility(false);

                var title = this.GetString(Resource.String.text_error);
                DialogHelper.ShowSimpleDialog(this, title, exception.Message);
            }
        }
예제 #7
0
        public void TestPasswordStorageCopyReturnsSameValues()
        {
            const string login    = "******";
            const string password = "******";

            using (var passwordStorage = new ScUnsecuredCredentialsProvider(login, password, "sitecore"))
            {
                Assert.AreEqual(login, passwordStorage.Username);
                Assert.AreEqual(password, passwordStorage.Password);

                using (var passwordStorageCopy = passwordStorage.CredentialsShallowCopy())
                {
                    Assert.AreNotSame(passwordStorage, passwordStorageCopy);

                    Assert.AreEqual(login, passwordStorageCopy.Username);
                    Assert.AreEqual(password, passwordStorageCopy.Password);
                }
            }
        }
예제 #8
0
        public ISitecoreSSCSession GetSession()
        {
            using
            (
                var credentials =
                    new ScUnsecuredCredentialsProvider(
                        this.instanceLogin,
                        this.instancePassword,
                        this.instanceSite
                        )
            )
            {
                var result = SitecoreSSCSessionBuilder.AuthenticatedSessionWithHost(this.instanceUrl)
                             .Credentials(credentials)
                             .DefaultDatabase(this.instanceDataBase)
                             .DefaultLanguage(this.instanceLanguage)
                             .BuildSession();

                return(result);
            }
        }
예제 #9
0
        private async void SendAuthRequest()
        {
            try
            {
                using (var credentials = new ScUnsecuredCredentialsProvider(this.loginField.Text, this.passwordField.Text, this.siteField.Text))
                    using
                    (
                        var session = SitecoreSSCSessionBuilder.AuthenticatedSessionWithHost(this.urlField.Text)
                                      .Credentials(credentials)
                                      .BuildReadonlySession()
                    )
                    {
                        this.ShowLoader();

                        var response = await session.AuthenticateAsync();

                        if (response.IsSuccessful)
                        {
                            AlertHelper.ShowLocalizedAlertWithOkOption("Message", "This user exist");
                        }
                        else
                        {
                            AlertHelper.ShowLocalizedAlertWithOkOption("Message", "This user not exist");
                        }
                    }
            }
            catch (Exception e)
            {
                AlertHelper.ShowLocalizedAlertWithOkOption("Error", e.Message);
            }
            finally
            {
                BeginInvokeOnMainThread(delegate
                {
                    this.HideLoader();
                });
            }
        }