Hi, Emma.
I agree with Michael, if you are that new to OpenID and UMA, using our [oxd server](https://gluu.org/docs/oxd/3.0.1/) could save you a lot of effort. You could go with our [python demo site](https://gluu.org/docs/oxd/libraries/python/) which in combination with oxd server could become a foundation for your demo. After that you could extend the code to do some UMA calls too, perhaps. Python is very easy to read and work with, what will save you some effort too. Here are [APIs](https://gluu.org/docs/oxd/protocol/#uma-authorization) responsible for UMA flows.
>For Authentication: -I installed Gluu, now according to docummentation, the next step is to register an openid client in Gluu. Before this, do I need to already have an IDP and add some users ?
You already have an "IdP" (this party in OIDC is called "OpenID Provider" or just OP), it's Gluu's core component oxAuth. You can register the client manually or if you'll use oxd server (or most of other OIDC clients out there) it may do it for you on the fly.
>Do I need a SAML IDP or LDAP can have this role?
For your very basic demo setup you don't need to add any more stages which would make it more complex. As Michael mentioned, the best way would be to use some users created at your Gluu instance via web UI. They will be stored into its internal LDAP server and authentication will happen at Gluu using login/password credentials you'll assign to them. The only protocols you'll need to care about in this case will be OIDC and UMA, which you need.
>For authorization: -Do you have some Demo related to UMA? Also, is there an apache plugin for uma also ?
It turns out we don't have one yet. Here is list of [UMA implementations](https://kantarainitiative.org/confluence/display/uma/UMA+Implementations). Please note we strictly limit our free Community Support in terms of which OIDC/UMA implementations are covered. This is another reason to use oxd server.
For general info on Gluu's features please check [our docs portal](https://gluu.org/docs/ce/3.0.1/)
For general info on OIDC you can refer to [core spec](http://openid.net/specs/openid-connect-core-1_0.html) and related papers.
For general info about UMA you can refer to [UMA specs](https://docs.kantarainitiative.org/uma/rec-uma-core.html), and to our own UMA pages [here](https://gluu.org/docs/ce/latest/api-guide/uma-api/) and [here](https://gluu.org/docs/ce/latest/admin-guide/uma/). [This video](https://www.youtube.com/watch?v=zVdUFcEAwPU) may also be helpful, though please note it's a bit outdated.