Saviynt unveils its cutting-edge Intelligence Suite products to revolutionize Identity Security!
Click HERE to see how Saviynt Intelligence is transforming the industry.
Saviynt Copilot Icon

Keeper Integration - Onboarding multiple nodes

AMavurapu
New Contributor III
New Contributor III

Hi Saviynt team,

We are working to integrate with Keeper at a customer. We have successfully imported Accounts and Entitlements of a node. Client has 19 nodes to import accounts and entitlements, so we are not sure how can we do that with single connection.

Please let us know if you have seen this before and have any thoughts that could be helpful. Thanks in advance.....

FYI - Please find below working ConnectionJSON and ImportAccountEntJSON for one node:

ConnectionJSON:

{
    "authentications": {
        "acctAuth": {
            "authType": "oauth2",
            "httpHeaders": {
                "Content-Type": "application/scim+json"
            },
            "authError": [
                "USER_AUTHENTICATION_FAILED",
                "PARTNER_AUTHENTICATION_FAILED",
                "AuthenticationFailed"
            ],
            "Host": "keepersecurity.com",
            "url": "*******/Users",
            "httpMethod": "GET",
            "Accept": "*/*",
            "errorPath": "errorCode",
            "maxRefreshTryCount": 5,
            "tokenResponsePath": "result",
            "tokenType": "Bearer",

            "refreshType": "RefreshToken",

            "refreshTokenResponsePath": "refresh_token",

            "refreshToken": "Bearer ********",
            "authHeaderName": "Authorization",
            "accessToken": "Bearer *********",
            "retryFailureStatusCode": [
                401,
                403,
                500
            ]
        }
    }
}

ImportAccountEntJSON:

{
"accountParams": {
"connection": "acctAuth",
"processingType": "SequentialAndIterative",
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"http": {
"url": "*******/Users",
"httpContentType": "application/scim+json",
"httpMethod": "GET",
"httpHeaders": {
"Authorization": "${access_token}"
}
},
"listField": "Resources",
"keyField": "accountID",
"colsToPropsMap": {
"accountID": "id~#~char",
"name": "userName~#~char",
"status": "active~#~bool",
"customproperty1": "emails[0].value~#~char",
"customproperty2": "active~#~bool",
"customproperty3":"displayName~#~char",
"displayName": "name~#~char",
"customproperty31": "STORE#ACC#ENT#MAPPINGINFO~#~char"
}
}
},
"acctEntMappings": {
"Groups": {
"listPath": "groups",
"idPath": "value",
"keyField": "entitlementID"
}
}
},
"entitlementParams": {
"processingType": "SequentialAndIterative",
"entTypes": {
"Groups": {
"entTypeOrder": 0,
"call": {
"call1": {
"connection": "acctAuth",
"callOrder": 0,
"stageNumber": 0,
"http": {
"httpHeaders": {
"Authorization": "${access_token}"
},
"url": "*********/Groups",
"httpContentType": "application/scim+json",
"httpMethod": "GET"
},
"listField": "Resources",
"keyField": "entitlementID",
"colsToPropsMap": {
"entitlementID": "id~#~char",
"entitlement_value": "displayName~#~char",
"description": "displayName~#~char"
},
"disableDeletedEntitlements": true
}
}
}
}
},
"acctEntParams": {
"processingType": "acctToEntMapping"
}
}

 

0 REPLIES 0