mirror of
https://github.com/gravitl/netmaker.git
synced 2025-09-09 06:35:23 +08:00
feat(go): add verify method for okta idp client;
This commit is contained in:
parent
99f1be4aba
commit
0c43dd3788
2 changed files with 20 additions and 6 deletions
|
@ -82,7 +82,7 @@ func SyncFromIDP() error {
|
|||
case "azure-ad":
|
||||
idpClient = azure.NewAzureEntraIDClientFromSettings()
|
||||
case "okta":
|
||||
idpClient, err = okta.NewOktaClient()
|
||||
idpClient, err = okta.NewOktaClientFromSettings()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
|
|
@ -12,12 +12,10 @@ type Client struct {
|
|||
client *okta.APIClient
|
||||
}
|
||||
|
||||
func NewOktaClient() (*Client, error) {
|
||||
settings := logic.GetServerSettings()
|
||||
|
||||
func NewOktaClient(oktaOrgURL, oktaAPIToken string) (*Client, error) {
|
||||
config, err := okta.NewConfiguration(
|
||||
okta.WithOrgUrl(settings.OktaOrgURL),
|
||||
okta.WithToken(settings.OktaAPIToken),
|
||||
okta.WithOrgUrl(oktaOrgURL),
|
||||
okta.WithToken(oktaAPIToken),
|
||||
)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
|
@ -28,6 +26,22 @@ func NewOktaClient() (*Client, error) {
|
|||
}, nil
|
||||
}
|
||||
|
||||
func NewOktaClientFromSettings() (*Client, error) {
|
||||
settings := logic.GetServerSettings()
|
||||
|
||||
return NewOktaClient(settings.OktaOrgURL, settings.OktaAPIToken)
|
||||
}
|
||||
|
||||
func (o *Client) Verify() error {
|
||||
_, _, err := o.client.UserAPI.ListUsers(context.TODO()).Limit(1).Execute()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
_, _, err = o.client.GroupAPI.ListGroups(context.TODO()).Limit(1).Execute()
|
||||
return err
|
||||
}
|
||||
|
||||
func (o *Client) GetUsers() ([]idp.User, error) {
|
||||
var retval []idp.User
|
||||
var allUsersFetched bool
|
||||
|
|
Loading…
Add table
Reference in a new issue