Adaptive Risikoanalyse für benutzerdefinierte Clientanwendungen
Kunden, die in die Cloud wechseln, können die adaptiven Funktionen der IAM-Identitätsdomain nutzen, um risikobasierte Analysen für ihr On-Premise-Zugriffsmanagementsystem, wie Oracle Access Manager (OAM), oder Clientanwendungen zu erfüllen.
Identitätsdomains bieten eine adaptive REST-API-Schnittstelle, mit der diese On-Premise-Zugriffsmanagementsysteme oder Clientanwendungen eine risikobasierte Engine der Identitätsdomain verwenden können, um Authentifizierungsaktivitäten für Benutzer zu bewerten.
Beispiel: John Doe ist ein Benutzer im OAM-Identitätsspeicher und in einer Identitätsdomain. John greift auf eine durch OAM geschützte Finanzanwendung zu. Der OAM-Server leitet ihn zur Authentifizierung zur OAM-Anmeldeseite um. John Doe übermittelt seine Zugangsdaten und basierend auf dem Risikoscore, der von der adaptiven risikobasierten Engine der Identitätsdomain zurückgegeben wird, kann der OAM-Server den Benutzer mit einem zweiten Faktor herausfordern. Wenn der Risikoscore hoch ist, kann OAM den Zugriff auf John verweigern und ihm eine Nachricht übermitteln, die angibt, dass sein Anmeldeversuch fehlgeschlagen ist.
-
Risiko auffüllen:
/admin/v1/sdk/adaptive/PopulateRisks -
Risikoinformationen abrufen:
/admin/v1/sdk/adaptive/FetchRisks -
Risiko mindern:
/admin/v1/sdk/adaptive/MitigateRisks
Informationen zum Abrufen eines Zugriffstokens finden Sie unter Zugriff auf die REST-API mit OAuth 2 verwenden.
Die adaptive REST-API-Schnittstelle erfordert, dass die Clientanwendung Informationen wie Benutzeridentifikation, Informationen über das Gerät, mit dem sich der Benutzer anmeldet, und die wahre IP-Adresse des Clients sendet.
Um Geräteinformationen zu erfassen, die Ihr Zugriffsverwaltungssystem mit einer JavaScript-Datei für den Gerätefingerprint verwenden muss. Sie können die Datei JavaScript für den Gerätefingerprint von der Identitätsdomainkonsole herunterladen.
- Melden Sie sich als Anwendungsadministrator bei der Identitätsdomainkonsole an.
- Blenden Sie das Navigations-Drawer ein, wählen Sie Einstellungen und dann Downloads aus.
- Laden Sie auf der Seite Downloads das Identity Cloud Service Device Fingerprint-Utility herunter.
Die heruntergeladene Datei ist eine komprimierte (ZIP-)Datei. Innerhalb der ZIP-Datei befindet sich eine JavaScript-Datei, die von der Anmeldeseite des Zugriffsverwaltungssystems oder der Clientanwendung selbst geladen werden muss, um Fingerabdruckinformationen zu erfassen. Verwenden Sie dann die Funktion getFingerprint(), um den Geräte-Fingerprint des Benutzers zu erfassen und an die adaptive REST-API-Schnittstelle der Identitätsdomains zu senden.
Siehe auch Zugriff für ein unbekanntes Geräteereignis für eine benutzerdefinierte Anmeldeseite aktivieren.
Risiko auffüllen
Dieser Endpunkt wird zum Weiterleiten von Risikodaten an eine Identitätsdomain verwendet, um den Risikoscore des Benutzers zu erhöhen.
curl -k -X POST 'https://<domainURL>/admin/v1/sdk/adaptive/PopulateRisks'
-H 'Authorization: Bearer <Access_Token>'
-H 'Accept:application/json'
-d '<Request_Body>'{
"userName": "<User_Name>",
"data": [
{
"name": "device",
"value": "<result_of_the_devicefingerprint_javascript_file>"
},
{
"name": "client-ip",
"value": "<ip_address_of_the_user_browser>"
}
],
"event": "MAX_PASSWORD_FAILED_ATTEMPTS"
}Das Attribut event ist optional. Wenn die Anforderung nicht vorhanden ist, werden alle Risikoereignisse zur Bewertung des Risikoscore verwendet. Sie können MAX_MFA_FAILED_ATTEMPTS- oder MAX_PASSWORD_FAILED_ATTEMPTS-Werte verwenden.
10.11.12.13 aus beim Zugriffsmanagementsystem anzumelden. Der Gerätefingerprint und die IP-Adresse werden anhand aller aktivierten Risikoereignisse in einer Identitätsdomain validiert. curl -k -X POST https://<domainURL>/v1/sdk/adaptive/PopulateRisks \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <Access_Token>' \
-d '{
"userName": "johndoe@example.com",
"data": [
{
"name": "device",
"value": "{\"currentTime\":\"Wed Nov 13 2019 16:57:34 GMT-0700 (Pacific Daylight Time)\",\"screenWidth\":1920,\"screenHeight\":1080,\"screenColorDepth\":24,\"screenPixelDepth\":24,\"windowPixelRatio\":1,\"language\":\"en-US\",\"userAgent\":\"Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Firefox/68.0\"}"
},
{
"name": "client-ip",
"value": "10.11.12.13"
}
]
}'{
"userName": "johndoe@example.com",
"riskLevel": "LOW",
"riskScores": [
{
"lastUpdateTimestamp": "2022-11-12T10:41:57.997Z",
"score": 15,
"riskLevel": "LOW",
"value": "ORACLE_IDCS",
"status": "ACTIVE",
"source": "Default Risk Provider",
"$ref": "https://<domainURL>/admin/v1/RiskProviderProfiles/ORACLE_IDCS"
}
]
}Risikoinfo abrufen
Mit diesem Endpunkt können Clients aktuelle Risikoinformationen für einen einzelnen Benutzer, mehrere Benutzer oder für alle Benutzer in einer Identitätsdomain abrufen.
curl -k -X POST 'https://<domainURL>/admin/v1/sdk/adaptive/FetchRisks' -H 'Authorization: Bearer <Access_Token>' -H 'Accept:application/json' -d '<Request_Body>'
{
"userNames": [
"<user_name>"
]
}{
"userNames": [
"<user_name_1>",
"<user_name_2>"
]
}{} curl -k -X POST https://<domainURL>/admin/v1/sdk/adaptive/FetchRisks \
-H 'Content-Type: application/json' \
-H "Authorization: Bearer <Access_Token>' \
-d '{
"userNames": [
"johndoe@example.com"
]
}'{
"totalResults": 1,
"resources": [
{
"userName": "johndoe@example.com",
"riskLevel": "LOW",
"riskScores": [
{
"lastUpdateTimestamp": "2022-11-13T18:41:57.997Z",
"score": 15,
"riskLevel": "LOW",
"value": "ORACLE_IDCS",
"status": "ACTIVE",
"source": "Default Risk Provider",
"$ref": "https://<domainURL>/admin/v1/RiskProviderProfiles/ORACLE_IDCS"
}
]
}
],
"startIndex": 1,
"itemsPerPage": 50
}Risiko mindern
Mit diesem Endpunkt können Clientanwendungen die Minderung des Risikoscores eines Benutzers anfordern, weil der Benutzer sich erfolgreich angemeldet oder sein Kennwort zurückgesetzt hat.
curl -k
-X POST 'https://<domainURL>/admin/v1/sdk/adaptive/MitigateRisks'
-H 'Authorization: Bearer <Access_Token>'
-H 'Accept:application/json'
-d '<Request_Body>'{
"userName": "<User_Name>",
"data": [
{
"name": "device",
"value": "<result_of_the_devicefingerprint_javascript_file>"
},
{
"name": "client-ip",
"value": "<ip_address_of_the_user_browser>"
}
],
"event": "SSO_THREAT_MITIGATION_SUCCESS"
}event des Anforderungsbodys kann mehrere Werte empfangen:- Geben Sie für eine erfolgreiche Benutzeranmeldung
SSO_THREAT_MITIGATION_SUCCESSan. - Um das Benutzerkennwort erfolgreich zurückzusetzen, geben Sie
ADMIN_ME_PASSWORD_CHANGE_SUCCESSan.
10.11.12.13 aus erfolgreich beim Zugriffsmanagementsystem angemeldet hat. curl -X POST \
https://<domainURL>/admin/v1/sdk/adaptive/MitigateRisks \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <Access_Token>' \
-d '{
"userName": "johndoe@example.com",
"data": [
{
"name": "device",
"value": "{\"currentTime\":\"Thu Nov 14 2019 10:11:18 GMT-0700 (Pacific Daylight Time)\",\"screenWidth\":1440,\"screenHeight\":900,\"screenColorDepth\":24,\"screenPixelDepth\":24,\"windowPixelRatio\":2,\"language\":\"en-US\",\"userAgent\":\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.81 Safari/537.36\"}"
},
{
"name": "client-ip",
"value": "10.11.12.13"
}
],
"event": "SSO_THREAT_MITIGATION_SUCCESS"
}'{
"userName": "johndoe@example.com",
"riskLevel": "LOW",
"riskScores": [
{
"lastUpdateTimestamp": 1574726401582,
"score": 10,
"riskLevel": "LOW",
"providerId": "ORACLE_IDCS",
"providerStatus": "ACTIVE",
"providerDescription": "Default Risk Provider",
"reference": "https://<domainURL>/admin/v1/RiskProviderProfiles/ORACLE_IDCS"
}
]
}