Skip to content

feat: Handle OIDC login by email and by OIDC#98

Draft
Ldoppea wants to merge 7 commits intomasterfrom
feat/handle_oidc_login
Draft

feat: Handle OIDC login by email and by OIDC#98
Ldoppea wants to merge 7 commits intomasterfrom
feat/handle_oidc_login

Conversation

@Ldoppea
Copy link
Copy Markdown
Contributor

@Ldoppea Ldoppea commented Jun 17, 2024

No description provided.

Ldoppea added 2 commits March 29, 2024 20:33
We want to remove the concept of `Profiles` as they overlap with Cozy's
`Contacts`

In cozy-keys-browser we will add the concept of `Contacts` to replace
old profiles, but in cozy-pass-mobile we won't add this for now as it
would require more work that we did not prioritize yet (we may want to
wait for future Bitwarden's announced technology switch)

This commit prevents from creating a `Profile` cipher

Related PR: cozy/cozy-keys-browser#169
We want to remove the concept of `Profiles` as they overlap with Cozy's
`Contacts`

In cozy-keys-browser we will add the concept of `Contacts` to replace
old profiles, but in cozy-pass-mobile we won't add this for now as it
would require more work that we did not prioritize yet (we may want to
wait for future Bitwarden's announced technology switch)

This commit prevents from editing and restoring `Profile` ciphers

Related PR: cozy/cozy-keys-browser#169
@Ldoppea Ldoppea force-pushed the feat/handle_oidc_login branch 3 times, most recently from ebfbf50 to da5a547 Compare June 18, 2024 07:43
Ldoppea added 2 commits June 18, 2024 11:47
In #86 we reworked the Login process by displaying the Cloudery

By doing so we introduced a regression that prevented OIDC user to
login

When entering their FQDN, the Cloudery would redirect to the OIDC
portal in the InAppBrowser instead of sending the FQDN to the CozyPass
Mobile app (CozyPass login doesn't use the OIDC process)

This fix adds the new `app_will_ask_password` parameter that tells the
Cloudery to skip the OIDC process. This parameter was introduced in the
MR `#437` on the cloudery project

Related PR: #86
@Ldoppea Ldoppea force-pushed the feat/handle_oidc_login branch from da5a547 to d994eab Compare June 18, 2024 09:48
Ldoppea added 3 commits June 18, 2024 11:49
Since #86 we support the Login by Email scenario

Unfortunately we supported Login by Email only for non OIDC users. For
OIDC users, the received email would not contain the correct info to
open the Cozy Pass app with the configured FQDN

To support this we want to add the `universallink_for_email` parameter
to the Cloudery URL

By doing so, the login process behavior would be closer to the Flagship
app one

With this parameter, the received email is now an universal link
containing a fallback to the Couldery's manager

This universal links also contain the FQDN if the Cozy exists, so we
can use it in order to fill the Login form

If the universal links does not contain any FQDN, then this means that
the Cozy does not exist and so we want to redirect to the Onboarding
screen instead

This behavior is based on the MR `#440` on the Cloudery project

Before this MR, we needed to open the Cloudery's manager URL into an
InAppBrowser in order to retrieve the FQDN, so this commit also
implements this behavior (although it would works only for non OIDC
users)

Related PR: #86
Since April 29, 2024, iOS apps must be built with the iOS 17 SDK or
later in order to be uploaded to App Store Connect

To enable iOS 17 SDK we must use XCode 15 that is linked to MacOS 13
and 14

So we want to run the Github Action in `macos-14` in order to have the
correct environment

Unfortunately the `macos-14` runner doesn't include Xamarin tools
anymore, so now we have to install them manually (that will increase
the CI built time by a few minutes)

Related articles:
- https://xcodereleases.com/
- https://github.com/actions/runner-images/blob/main/images/macos/macos-14-Readme.md
@Ldoppea Ldoppea force-pushed the feat/handle_oidc_login branch from d994eab to 586bbff Compare June 18, 2024 09:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant