providers/oauth2: add device flow (#3334)
* start device flow Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org> * web: fix inconsistent app filtering Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org> * add tenant device code flow Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org> * add throttling to device code view Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org> * somewhat unrelated changes Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org> * add initial device code entry flow Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org> * add finish stage Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org> * it works Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org> * add support for verification_uri_complete Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org> * add some tests Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org> * add more tests Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org> * add docs Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org> Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org>
This commit is contained in:
		| @ -314,6 +314,40 @@ export class TenantForm extends ModelForm<Tenant, string> { | ||||
|                             ${t`If set, users are able to configure details of their profile.`} | ||||
|                         </p> | ||||
|                     </ak-form-element-horizontal> | ||||
|                     <ak-form-element-horizontal label=${t`Device code flow`} name="flowDeviceCode"> | ||||
|                         <select class="pf-c-form-control"> | ||||
|                             <option | ||||
|                                 value="" | ||||
|                                 ?selected=${this.instance?.flowDeviceCode === undefined} | ||||
|                             > | ||||
|                                 --------- | ||||
|                             </option> | ||||
|                             ${until( | ||||
|                                 new FlowsApi(DEFAULT_CONFIG) | ||||
|                                     .flowsInstancesList({ | ||||
|                                         ordering: "slug", | ||||
|                                         designation: | ||||
|                                             FlowsInstancesListDesignationEnum.StageConfiguration, | ||||
|                                     }) | ||||
|                                     .then((flows) => { | ||||
|                                         return flows.results.map((flow) => { | ||||
|                                             const selected = | ||||
|                                                 this.instance?.flowDeviceCode === flow.pk; | ||||
|                                             return html`<option | ||||
|                                                 value=${flow.pk} | ||||
|                                                 ?selected=${selected} | ||||
|                                             > | ||||
|                                                 ${flow.name} (${flow.slug}) | ||||
|                                             </option>`; | ||||
|                                         }); | ||||
|                                     }), | ||||
|                                 html`<option>${t`Loading...`}</option>`, | ||||
|                             )} | ||||
|                         </select> | ||||
|                         <p class="pf-c-form__helper-text"> | ||||
|                             ${t`If set, the OAuth Device Code profile can be used, and the selected flow will be used to enter the code.`} | ||||
|                         </p> | ||||
|                     </ak-form-element-horizontal> | ||||
|                 </div> | ||||
|             </ak-form-group> | ||||
|             <ak-form-group> | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 Jens L
					Jens L