2016-10-31 3 views
6

Wir möchten, dass unsere Benutzer eine Reihe von temporären CLI-Anmeldeinformationen für eine bestimmte AWS-Rolle abrufen können, indem sie sich bei OneLogin mit Passwort und MFA anmelden. Wir haben eine funktionierende Lösung, aber der Benutzer muss sich alle 60 Minuten erneut bei OneLogin (einschließlich MFA) authentifizieren, da die temporären AWS-Anmeldeinformationen ablaufen. Ich denke, dass das nicht fliegen wird - unsere Benutzer sind daran gewöhnt, permanente API-Anmeldeinformationen an einen echten IAM-Benutzer zu binden.AWS-API-Anmeldeinformationen mit OneLogin SAML und MFA

Im Idealfall möchten wir Benutzern erlauben, sich einmal pro Tag zu authentifizieren, die resultierende SAML-Assertion sicher zwischenzuspeichern und die AWS-API-Anmeldeinformationen bei Bedarf transparent zu aktualisieren. Ich denke an etwas wie aws-keychain, das den lokalen OS Credential Store verwenden würde, um sich an die SAML-Assertion zu erinnern, und den Benutzer nur zur Eingabe auffordert, wenn seine OneLogin-Sitzung abgelaufen ist.

Das funktioniert fast wie es ist. Der Haken dabei ist, dass die SAML-Assertion, die von OneLogins saml_assertion und verify_factor Endpunkten zurückgegeben wird, einen dreiminütigen Termin für die Felder Subject und Conditions festlegt.

Gibt es eine Möglichkeit zu tun, was wir wollen, oder versuchen wir, ein Kern-SAML-Prinzip zu umgehen?

+0

Haben Sie es geschafft, sortiere das aus? –

+0

@PavelNikolov Nein, haben wir nicht. Der Ansatz, den ich oben dargelegt habe, ist wohl falsch. Wir möchten, dass die MFA-Validierung mit dem Einrichten einer Benutzersitzung und nicht mit dem Ausstellen einer SAML-Zusicherung verknüpft wird. Solange meine Benutzersitzung gültig ist, konnte ich automatisch eine übereinstimmende SAML-Assertion generieren und diese in ein Sitzungstoken in AWS übersetzen. Ich denke nicht, dass wir dies mit dem gegenwärtigen OneLogin API Design erreichen können. –

+0

Ich weiß nicht, ob es Ihrem Anwendungsfall hilft, aber STS-Sitzungen können jetzt für bis zu 36 Stunden gültig gemacht werden. – Evan

Antwort

1

Wir sind dabei, offiziell eine Option in unser offizielles CLI-Tool zu integrieren, um die Anmeldeinformationen des Benutzers ähnlich wie beschrieben zu verwenden.

Im Wesentlichen verfügt unser CLI-Tool über eine Option zur Wiederverwendung des Benutzers/Pass im Hintergrund, um die Zugriffsinformationen in einem Benutzerprofil kontinuierlich zu aktualisieren. Während der Benutzer die Anmeldeinformationen einmal angibt, werden die Zugriffsinformationen aktualisiert, bevor sie ablaufen.

Aber leider, zumindest zu diesem Zeitpunkt, gibt es keine Möglichkeit, den MFA-Teil zu umgehen, wenn die Anwendungsrichtlinie MFA erfordert. Es benötigt diese MFA, um die Anmeldeinformationen zu aktualisieren.

Wenn Sie haben MFA zu haben, können Sie immer die ONELOGIN MFA APIs in einem MFA fließen in das Werkzeug backen können ...

bestellen hier aus: https://github.com/onelogin/onelogin-aws-cli-assume-role/pull/5