FusionAuth
    • Home
    • Categories
    • Recent
    • Popular
    • Pricing
    • Contact us
    • Docs
    • Login
    1. Home
    2. Categories
    3. Q&A
    Log in to post
    Load new posts
    • Recently Replied
    • Recently Created
    • Most Posts
    • Most Votes
    • Most Views
    • E

      Custom MFA using step up API

      • • elciok
      2
      1
      Votes
      2
      Posts
      602
      Views

      danD

      @elciok

      There is currently no way to determine if someone has gone through step-up auth via the token. I did just add an issue: https://github.com/FusionAuth/fusionauth-issues/issues/1491 feel free to add comments there.

      What you can do is use a JWT populate lambda to add a claim to the JWT if the user has any MFA methods enabled. When you do a step up you'll get a token and you can look at that claim.

      HTH

    • A

      Unsolved Enter email only for SAML

      • • admin 3
      2
      0
      Votes
      2
      Posts
      553
      Views

      robotdanR

      @admin-3

      I think so. See the "Managed domains" configuration in the SAML v2 IdP.
      https://fusionauth.io/docs/v1/tech/identity-providers/samlv2/#create-a-saml-v2-identity-provider

      Adding one or more managed domains for this configuration will cause this provider not to be displayed as a button on your login page. Instead of a button the login form will first ask the user for their email address. If the user’s email address matches one of the configured domains the user will then be redirected to this login provider to complete authentication. If the user’s email address does not match one of the configured domains, the user will be prompted for a password and they will be authenticated using FusionAuth.

    • A

      Send additional params to identity providers link

      • • adil
      5
      0
      Votes
      5
      Posts
      2.1k
      Views

      joshuaJ

      @alex

      Thanks for the additional information! It sounds like this is already an active issue that you can upvote for consideration into future versions of FusionAuth.

      https://github.com/FusionAuth/fusionauth-issues/issues/1335

      If a good workaround comes to mind, I will be sure to let you know.

      Thanks,
      Josh

    • C

      OpenID Service provided link does not work with Identity Providers

      • • chrissmueller328
      8
      0
      Votes
      8
      Posts
      2.0k
      Views

      joshuaJ

      @chrissmueller328

      There is some discussion of this (mostly focused on SAML, but OIDC is referenced and considered as well)

      https://github.com/FusionAuth/fusionauth-issues/issues/566

      I will review further and see if the team has any other thoughts.

      Thanks,
      Josh

    • R

      Username and name is blank when create user with API (/api/user) occasionally

      • • rekhas.fahrizi
      2
      0
      Votes
      2
      Posts
      382
      Views

      joshuaJ

      @rekhas-fahrizi

      Can you provide a few more details about the request you are making (maybe a few code samples would be helpful as well)?

      Thanks,
      Josh

    • A

      Code flow React / .NET Architecture

      • • andrew.boyd
      6
      0
      Votes
      6
      Posts
      911
      Views

      joshuaJ

      @andrew-boyd

      Perfect! Sounds good1

      Josh

    • danD

      Should I use the password grant or the Login API when building a mobile application and not using a webview?

      • • dan
      2
      0
      Votes
      2
      Posts
      414
      Views

      danD

      First, we recommend a webview or system browser. They have different strengths. The system browser is recommended by the security BCP and is preferred if the mobile app is not built by the same development organization as is running the identity provider (FusionAuth).

      However, if both mobile app and IdP are owned by the same organization, a webview is fine too, and can offer more control over the user experience.

      That said, some folks, as mentioned in the question, don't want a webview. They want to build the login experience out of native UI components. This gives them full control:

      In that case, there are a few consequences:

      the Authorization Code grant is not possible to implement, because it requires the user authenticate at FusionAuth. You will be re-implementing all of the "hosted login pages" logic and flow using the API. See https://fusionauth.io/docs/v1/tech/core-concepts/integration-points/#hosted-login-pages for the list of functionality you should be prepared to re-implement. Your mobile app will see username and passwords. Prepare for that from a security perspective. You will need to choose between the password grant and the login API

      These are functionally equivalent. Arguments in favor of the Login API:

      Richer response (you get different status codes for things like MFA required or "user not registered to this application") Can be protected with a tightly limited API key. You could actually provision an API key per mobile device if needed, using the API key API and some custom code: https://fusionauth.io/docs/v1/tech/apis/api-keys/

      Against:

      You must embed an API key in your application or relax certain security settings Tightly couples your application to FusionAuth

      Arguments for the password grant:

      It's an OAuth grant, so code written against it is more portable. No API key needed. No security requirements need to be loosened.

      Arguments against:

      You'll have to be prepared to parse JSON in the response if you are in any exceptional cases (MFA enabled, etc).

      HTH.

    • H

      SAML Populate Lambda add user group names

      • • hthornton
      4
      0
      Votes
      4
      Posts
      646
      Views

      H

      @joshua
      Thanks. I've up-voted a few of those open issues.

      Since I'm trying to make this work for a COTS application I don't have the luxury of injecting another API call.

      For now I'm pretending that the groupId being returned is the LDAP distiguished name for the group (I prefixed it in the Lambda with dn=). Then I can trick the application to looking up the group by the LDAP dn instead of name.

    • ?

      Can I run my own database behind my FusionAuth Cloud instance?

      • • A Former User
      1
      1
      Votes
      1
      Posts
      768
      Views

      No one has replied

    • danD

      Can you run FusionAuth in kubernetes?

      kubernetes runtimes faq • • dan
      7
      2
      Votes
      7
      Posts
      7.2k
      Views

      danD

      As of q4 2021, FusionAuth officially supports Kubernetes.

      You can read the docs here: https://fusionauth.io/docs/v1/tech/installation-guide/kubernetes/

    • danD

      Different base resources for an environment

      theme environments customization • • dan
      2
      0
      Votes
      2
      Posts
      4.7k
      Views

      danD

      The best way to do this is to put a value on the tenant.data object. From there you can access it in each theme.

      So, for the tenant in the dev environment, set tenant.data.assethost to dev.example.com. For the prod environment, set tenant.data.assethost to dev.example.com.

      Then, in your theme, you'd have something like this:

      <link rel="stylesheet" href="${tenant.data.assethost}/styles.css"/>

      The reason to use the tenant object is that it is available on every theme template.

      This does mean that your tenant configuration will differ slightly between environments. You can also replicate this field value between tenants if you are using multiple tenants.

    • S

      Cross-platform SSO

      • • stunny
      4
      0
      Votes
      4
      Posts
      902
      Views

      M

      What do you mean by 'user logs into desktop application'? How would you like to implement it?
      If you implement step 1. as I've described in my previous post (by opening the browser window to log the user in) then there will be an SSO session in the browser already.
      This is the flow that OAuth specs define for native applications, eg. desktop ones: https://datatracker.ietf.org/doc/html/rfc6749#section-9

      This means that in step 3. when the browser is opened, the user is already authenticated.

    • danD

      Additional resources for identity

      authentication authorization resources • • dan
      2
      0
      Votes
      2
      Posts
      863
      Views

      danD

      I have enjoyed these books:

      https://www.manning.com/books/oauth-2-in-action very specific to OAuth, lots of code)

      https://www.apress.com/gp/book/9781484250945 More focused on bigger identity strategies and problems.

      Also, the IDPro body of knowledge is free and useful:

      https://idpro.org/body-of-knowledge/

    • P

      how to add dynamic parameters to the confirmation link

      • • povilas_pisklov
      2
      0
      Votes
      2
      Posts
      378
      Views

      danD

      Hiya,

      It depends on what you mean by "dynamic". What are they based dynamically based on?

      If they are based on attributes of the user, you could pull them from user.data. If they are random or time based, you could use the method outlined here: https://stackoverflow.com/a/51554484/203619

      I'd also suggest testing to see if any parameters you add to the confirmation link are received by the destination page. I'm not sure if any processing happens that might strip unknown parameters. (I don't think so, but am not certain.)

      Let us know what you find!

    • H

      Server Availability

      • • hopepost1976
      4
      0
      Votes
      4
      Posts
      541
      Views

      danD

      Hiya,

      You should review the APIs to determine if FusionAuth can meet your needs.

      You can sync almost everything.

      One notable exception is the password hash and other info around it (salt, etc) which are not available via API call.

    • M

      If, say, FusionAuth is hit by a meteor, what are the recovery/continuity plans for those with apps built using FusionAuth

      • • mg
      2
      0
      Votes
      2
      Posts
      370
      Views

      joshuaJ

      @mg

      Good question! Aspects of this question are covered in our FAQ.

      https://fusionauth.io/license-faq/#19
      https://fusionauth.io/license-faq/#11

      Additional information can be found by contacting our sales team should you have a business need for continuity plans.
      Please use the contact form found on the home page.

      https://fusionauth.io/contact/

      Thanks,
      Josh

    • B

      .NET API FusionAuth pipeline setup not authenticating with token

      • • bharnett
      2
      0
      Votes
      2
      Posts
      840
      Views

      B

      Instead of using an OpenIdConnect authentication method I instead used a JWT Bearer like so:

      services.AddAuthentication(options => { options.DefaultScheme = JwtBearerDefaults.AuthenticationScheme; options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme; }) .AddJwtBearer(JwtBearerDefaults.AuthenticationScheme, opt => { opt.Authority = "https://my.fusionauth.instance"; opt.RequireHttpsMetadata = true; opt.SaveToken = true; opt.TokenValidationParameters = new TokenValidationParameters() { ValidAudience = "my application id / client id"; }; });

      I could add the oidc back and use it to so long as I decoreate my Authorize attributes with that authentication scheme.

      Now the pipeline calls my fusion auth instance and checks the token matches and has not been tampered with. To get this to work I had to create my own Key in FusionAuth and apply it to the JWT settings of my application. Then when the runtime calls https://my.fusionauth.instance/.well-known/jwks.json it returns the key needed to validate the token.

      Now to get roles to work ...

    • danD

      Copied tenant, email can't be sent?

      email tenants • • dan
      2
      0
      Votes
      2
      Posts
      1.2k
      Views

      danD

      A couple of things:

      https://fusionauth.io/docs/v1/tech/troubleshooting/#troubleshooting-email has troubleshooting tips worth checking out.

      The UI copy doesn't copy the SMTP password, so double check that as well.

    • A

      If I can decode a JWT, then how are they secure?

      • • akira
      2
      0
      Votes
      2
      Posts
      1.3k
      Views

      A

      Good question.

      JWTs are either signed or encrypted. For the most part, you will encounter signed JWTs. When a JWT is created by an authorization server, it is signed. The signature essentially functions as a way to say "this payload has been signed using this algorithm. If the payload is different than what was signed, then this JWT is invalid." It is important to not pass sensitive data in a JWT payload for the reason that it can be viewed, but if a malicious actor tries to tamper with the JWT, the signature will no longer match it, and it will be invalid.

    • H

      This topic is deleted!

      • • hopepost1976
      1
      0
      Votes
      1
      Posts
      8
      Views

      No one has replied