Bedework / bedework

An Enterprise Calendar and Scheduling System
Apache License 2.0
40 stars 9 forks source link

Create a user via CalDAV #123

Closed mehrdad-shokri closed 4 years ago

mehrdad-shokri commented 6 years ago

Thanks for your awesome awesome efforts. I'm really new to Bedework and CalDAV in general and have 2 questions.

  1. Since I'm planning on connecting to Bedework solely from CalDAV protocol can I disable UI completely? does it have any performance drawbacks if it's kept on?

  2. How can I create a new user via CalDAV protocol? I'm connecting to it via a CalDAV client library. Is there any route, method to create a new user(principal)?

douglm commented 6 years ago

On 10/28/18 15:17, Mehi Shokri wrote:

Thanks for your awesome awesome efforts. I'm really new to Bedework and CalDAV in general and have 2 questions.

Thank you...

1.

Since I'm planning on connecting to Bedework solely from CalDAV
protocol can I disable UI completely? does it have any performance
drawbacks if it's kept on?

No there's no problem doing so

1.

2.

How can I create a new user via CalDAV protocol? I'm connecting to
it via a CalDAV client library. Is there any route, method to
create a new user(principal)?

The only requirement is that the user be in whatever directory you're using for authentication. User information internal to bedework is automatically created on login.

1.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/Bedework/bedework/issues/123, or mute the thread https://github.com/notifications/unsubscribe-auth/AC2mBtZwQk7KZMivHSPtZXlygcDGOPEyks5upgK_gaJpZM4X-IiE.

mehrdad-shokri commented 6 years ago

The only requirement is that the user be in whatever directory you're using for authentication. User information internal to bedework is automatically created on login.
So let me be more specific. suppose I'm creating a SASS calendar app. The solution I've come with is creating an API which handles business logic, subscription, etc.
This API also talks directly to Bedework for calendar creation, and anything related to CalDAV.
Now I have two questions:

  1. Do you see this approach fit? Do you see any improvements or another better approach?
  2. My second question is about authentication and user creation. My intuition says that I should use LDAP for authentication between these 2 applications. I'm not sure about this.
    A user signs in to my API for the first time and gets a jwt token. from the subsequent request, he just sends me the jwt token. My API know who is the user is, but don't know how to authenticate him. How to create the new user, how to create a new calendar and how's the authentication process.
douglm commented 5 years ago

Ldap is probably the easiest. CalDAV uses basic auth. You can use the authentication approach already embedded in the wildfly configuration.

Look for the configuration of the security domains

... Just configure that domain to use your ldap server.
nileshkale commented 2 years ago

How does one create a "admin" user when using external auth like LDAP or RedHat SSO? What additional configuration is required to mark a user in SSO/LADP as a admin user or for a user A to be able to create events on User B's calendar/?