public IHttpActionResult OktaWithData(string ID, string SomeData)
        {
            var oktaClient = new OktaClient(APIKey, "financialpartners");
            var usersClient = oktaClient.GetUsersClient();

            try
            {
                if (ID == "3") //Create a New User
                {
                    var user = new User("*****@*****.**", "*****@*****.**", "New", "User");
                    user = usersClient.Add(user);
                    return Ok(user);
                }
                if (ID == "4") //Deactivate a User
                {
                    var user = usersClient.Get("*****@*****.**");
                    usersClient.Deactivate(user);
                    return Ok(user);
                }
                else
                    return Ok("NotOkay");
            }
            catch (System.Exception ex)
            {

                return Ok("NotOkay" + ex.Message + ex.InnerException);

            }
        }
示例#2
0
        protected override void BeginProcessing()
        {
            if (Client == null)
            {
                var oktaSettings = new OktaSettings()
                {
                    ApiToken = Token,
                    BaseUri = String.IsNullOrEmpty(FullDomain) ? null : new Uri(FullDomain),
                    Subdomain = Subdomain
                };

                Client = new OktaClient(oktaSettings);
            }
        }
        string APIKey = "{Fill in when generated}"; //My Generated Token

        #endregion Fields

        #region Methods

        public IHttpActionResult Authenticate(string ID)
        {
            var oktaClient = new OktaClient(APIKey, "financialpartners");
            var usersClient = oktaClient.GetUsersClient();

            try
            {

                if (ID == "1") //Get a User
                {
                    var user = usersClient.Get("*****@*****.**");
                    return Ok(user);
                };

                if (ID == "2") //Not Sure what to do here yet
                    return Ok("Authorized 2");

                if (ID == "3") //Create a New User
                {
                    var user = new User("*****@*****.**", "*****@*****.**", "New", "User1");
                    user.Credentials.Password = new Password() { Value = "1234" };
                    user = usersClient.Add(user);
                    return Ok(user);
                }
                if (ID == "4") //Deactivate a User
                {
                    var user = usersClient.Get("*****@*****.**");
                    usersClient.Deactivate(user);
                    return Ok(user);
                }

                if (ID == "5") //Get Session
                {
                    //Not Super Clear on what to do here the API guide is weak for C# developers
                    //It assumes you have strong knowledge of REST and JSON
                    var session = oktaClient.GetSessionsClient();
                    session.Create("*****@*****.**", "7381!");
                    return Ok(session); //this should be a token

                }
                else
                    return Ok("NotOkay");
            }
            catch (System.Exception ex)
            {
                throw new HttpResponseException(new HttpResponseMessage());
            }
        }
示例#4
0
        private void PromptForLogin()
        {
            if (String.IsNullOrEmpty(Token))
            {
                var response = this.InvokeCommand.InvokeScript("Read-Host", "Enter your API Token");
                Token = response.First().BaseObject.ToString();
                WriteVerbose("This is the token " + Token);
            }

            var oktaSettings = new OktaSettings()
            {
                ApiToken = Token,
                BaseUri = String.IsNullOrEmpty(FullDomain) ? null : new Uri(FullDomain),
                Subdomain = Subdomain
            };

            Client = new OktaClient(oktaSettings);
        }
        private void Setup(string apiToken, Uri baseUri)
        {
            settings = new OktaSettings();
            settings.ApiToken = apiToken;
            settings.BaseUri = baseUri;

            client = new OktaClient(settings);
            users = client.GetUsersClient();
            groups = client.GetGroupsClient();
            sessions = client.GetSessionsClient();
            apps = client.GetAppsClient();
            authn = new AuthClient(settings);
            factors = new OrgFactorsClient(settings);
        }