Esaminare l'applicazione Python e il kit SDK
In questa sezione della soluzione ci si trova:
-
Controllare il funzionamento e il codice dell'applicazione Web Python
-
Controllare i dati di diagnostica associati ai tentativi di login riusciti e non riusciti che l'applicazione Web Python inizi in Oracle Identity Cloud Service
Esamina il funzionamento dell'applicazione Python
Il funzionamento dell'applicazione Web Python segue il flusso di autenticazione a tre fasi definito dal tipo di autorizzazione del codice di autorizzazione.
Per verificare tutte le richieste, le risposte e reindirizzare che l'applicazione e Oracle Identity Cloud Service eseguono utilizzando il browser Web, abilitare la modalità sviluppatore per il browser. Questa soluzione utilizza Google Chrome.
- Eseguire l'applicazione Web Python.
- Aprire un browser Web Google Chrome, accedere all'URL di
http://localhost:8080
e fare clic su Login . - Premere F12, selezionare la scheda Rete e selezionare la casella di controllo Conserva log . Selezionare questa casella di controllo per visualizzare tutte le comunicazioni tra l'applicazione e Oracle Identity Cloud Service.
- Nella pagina Login fare clic sull'icona rossa Oracle, visualizzata a destra di oppure è possibile eseguire il login.
Controllare il codice dell'applicazione Python
Dopo aver effettuato l'accesso a Oracle Identity Cloud Service ed effettuato il reindirizzamento all'URL di callback dell'applicazione Web Python, l'applicazione Web Python visualizza le informazioni nella finestra della riga di comando.
[Date] "GET / HTTP/1.1" 200 2520 [Date] "GET /login/ HTTP/1.1" 200 3489 [Date] "GET /auth/ HTTP/1.1" 302 0 [Date] "GET /callback?code=[value has been omitted for readability]&state=1234 HTTP/1.1" 301 0 [Date] "GET /callback/?code=[value has been omitted for readability]&state=1234 HTTP/1.1" 200 2690
Controllare i dati di diagnostica
Quando l'applicazione Web Python tenta di collegarsi a Oracle Identity Cloud Service, i tentativi riusciti e non riusciti vengono registrati nei file di log di diagnostica di Oracle Identity Cloud Service.
- Collegarsi a Oracle Identity Cloud Service.
- Nella console di Identity Cloud Service, espandere il cassetto di navigazione, fare clic su Impostazioni , quindi fare clic su Diagnostica .
- Selezionare Vista attività come tipo di diagnostica, quindi fare clic su Salva .
- Scollegarsi da Oracle Identity Cloud Service.
Oracle Identity Cloud Service acquisisce i dati diagnostici per i prossimi 15 minuti.
- Completare i passi descritti nell'argomento Esegui l'applicazione Python di questa soluzione per visualizzare la pagina Login dell'applicazione Web Python.
- Fare clic sull'icona rossa Oracle, visualizzata a destra di oppure è possibile eseguire il login.
- Per effettuare un tentativo di accesso non riuscito, immettere un nome utente errato o una password errata nella pagina Collegamento di Oracle Identity Cloud Service.
- Per accedere correttamente, immettere il nome utente e la password corretti.
- Utilizzare l'applicazione Web Python per scollegarsi da Oracle Identity Cloud Service.
- Collegarsi a Oracle Identity Cloud Service.
- Nella console di Identity Cloud Service, espandere il cassetto di navigazione, fare clic su Report , quindi fare clic su Dati diagnostici.
- Selezionare un intervallo di tempo di 15-Minute, il tipo di log Visualizzazione attività , il formato di report CSV e fare clic su Scarica report .
Il file di log della diagnostica include informazioni simili a quelle riportate di seguito sui tentativi di accesso a Oracle Identity Cloud Service.
Message: ID Token will be signed with User Tenant:idcs-abcd1234 Resource Tenant:idcs-abcd1234, clientId=123456789abcdefghij Component: OAuth Timestamp: [Date] Actor ID: your.email@domain.com --------------------------------------------------------------- ... --------------------------------------------------------------- Message: {"request":{"tenant":"idcs-abcd1234","grant types":"authorization_code","scopes":["urn:opc:idm:t.user.me"]},"user":{"id":"111111","name":"your.email@domain.com","tenant":"idcs-abcd1234","auth-type":"PASSWORD"},"client":{"id":"123456789abcdefghij","name":"Sample App","tenant":"idcs-abcd1234","auth-type":"PASSWORD"},"environment":{"isCSR":"false","onBehalfOfUser":"false"},"response":{"result":"ALLOWED","scopes":["urn:opc:idm:t.user.me"],"custom-claims":{"clientAppRoles":["Authenticated Client","Me"],"userAppRoles":["Authenticated","Global Viewer","Identity Domain Administrator"],"user_isAdmin":"true"}}} Component: Authorization/getAllowedScopes Timestamp: [Date] Actor ID: your.email@domain.com --------------------------------------------------------------- ... --------------------------------------------------------------- Message: {"Message":"SSO SignOn Policy evaluation result for user : 11111 is : effect:ALLOW,authenticationFactor:IDP,allowUserToSkip2FAEnrolment:false,2FAFrequency:SESSION,reAuthenticate:false,trustedDevice2FAFrequency: Component: Timestamp: Actor ID: --------------------------------------------------------------- ... --------------------------------------------------------------- Message: [PolicyEngineUtil.evaluatePolicy] Evaluating Default Sign-On Policy Component: PolicyEngine Timestamp: [Date] Actor ID: uiSignin --------------------------------------------------------------- ... --------------------------------------------------------------- Message: [PolicyEngineUtil.evaluateRule] Evaluating MFA rule Component: PolicyEngine Timestamp: [Date] Actor ID: uiSignin --------------------------------------------------------------- ... --------------------------------------------------------------- Message: [PolicyEngineUtil.evaluatePolicy] Evaluating Default Authentication Target App Policy Component: PolicyEngine Timestamp: [Date] Actor ID: idcssso --------------------------------------------------------------- ... --------------------------------------------------------------- Message: {"password":"********","authFactor":"USERNAME_PASSWORD","device":"{\"currentTime\":\"[date]",\"screenWidth\":1920,\"screenHeight\":1080,\"screenColorDepth\":24,\"screenPixelDepth\":24,\"windowPixelRatio\":1,\"language\":\"en\",\"userAgent\":\"Mozilla\/5.0 (Windows NT 10.0 Component: Timestamp: Actor ID: --------------------------------------------------------------- ... --------------------------------------------------------------- Message: {"Message":"No session found so need to collect credentials","Redirecting to Login URL: ":https://idcs-abcd1234.identity.oraclecloud.com/ui/v1/signin} Component: SSO Timestamp: [Date] Actor ID: Unauthenticated --------------------------------------------------------------- ... --------------------------------------------------------------- Message: [PolicyEngineUtil.evaluatePolicy] Evaluating Default Identity Provider Policy Component: PolicyEngine Timestamp: [Date] Actor ID: Unauthenticated --------------------------------------------------------------- Message: Authorization Request, received parameters: scope[urn:opc:idm:t.user.me openid] response_type[code] state[1234] redirect_uri[http://localhost:8000/callback] client_id[123456789abcdefghij] Component: OAuth Timestamp: [Date] Actor ID: Unauthenticated
I log più recenti vengono visualizzati nella parte superiore del file.