Hello Eric,
my scenario is the following.
A set of API has been defined to expose core business functions, to clerks
and sales force automation. Some functions are specifically sensitive. All
access requires end user authentication. Some function are only accessible
to users when using trusted clients: for example access from browsers js
apps is not enabled to some functions, while native clients for mobile SFA
do.
For trusted application i have implemented OAUTH with signed JWT client
authentication (updated KC to latest) almost meeting security requirements
(added a ticket to KC for supports of nonces) but oauth client and
application are actually unrelated, so no way I can relate the client id to
application to enforce access to sensitive api to only users authenticated
with the trusted client.
Of course I can set the api_key header to the one I have associated to the
trusted client, but this are unrelated (security department not so happy).
I could probably use the api_key as client_id in KC and implement a custom
policy to verify the access token audience (i guess that is where the
client is mapped in the signed token) matches the apikey.
In general i was thinking if diffeent strategies for application
identification made sense (at api level) .
Bests
Mike
On Thu, 14 Jan 2016 at 14:34, Eric Wittmann <eric.wittmann(a)redhat.com>
wrote:
Hi Michele.
That is correct. Typically the end-user population is tied to the API
being invoked rather than the Client (software) being used to connect.
If that is not the case, then you could configure the OAuth policy on
the Client Application rather than on the API (Service). That way you
could have a different user population for each connecting client. If
that's your use-case I'd love to hear more about it. :)
-Eric
On 1/13/2016 3:05 PM, michele danieli wrote:
> When considering non public API and applying a OAuth authentication
> policy, the application identifier must be provided using the api_key as
> a header?
>
> If so, does not it means that the user authorized client and the actual
> api consumer application have no strict relationship?
>
>
> Thanks
> Michele
>
>
> _______________________________________________
> Apiman-user mailing list
> Apiman-user(a)lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/apiman-user
>