Additional "Idea" on GSOC page

85 views
Skip to first unread message

Sean McGregor

unread,
Apr 12, 2013, 12:33:42 AM4/12/13
to pri...@googlegroups.com
Hello All,

After some discussion on IRC, I added an additional Summer of Code
"Idea" to the Ideas page [1] entitled, "Develop Identity and Sharing
System." It is a rails development idea with the following
description:

"The Rails-based web application provides authentication and
authorization for any injectable application's content. Current
identity systems (you can authorize users on each piece of content
based on whether they have these identities) include: Privly verified
email, Privly verified domain, and IP address. For this idea you can
abstract the "identity provider" approach to make it easier to add
additional identity types, like Facebook friend, Diaspora aspect,
Google circle, GeoIP location, public/private key, password, etc. A
very strong proposal (although not required) will include a plan for
turning the functionality into a Ruby Gem."

The hard parts of this include integrating various APIs, building an
abstraction that is easy to develop against, and building a UI that
makes it easy to to select which identities have access to what.

If you have questions/suggestions/etc, feel free.

-Sean

[1] https://github.com/privly/privly-organization/wiki/Ideas

--
Sean McGregor

Oregon State University, Department of Computer Science
Twitter: seanmcgregor
irc.freenode.net: smcgregor

Quazi Marufur Rahman

unread,
Apr 14, 2013, 3:12:36 PM4/14/13
to pri...@googlegroups.com
Hi

I am good at rails and interested about this project.
But the requirement is not clear to me. Could you please provide a use case scenarios to make it more clear?
Additionally, what level of skill sets do you prefer for this project?

Thanks
Maruf

Sean McGregor

unread,
Apr 14, 2013, 3:48:38 PM4/14/13
to pri...@googlegroups.com
Hi Maruf,

An example use case is:

* A user wants to share content with per...@email.com, everyone with
an @university.edu email, and all his Facebook friends. They create a
sharing rule for all these identities. No one outside these identities
will be authorized for the content.

Regarding skills- if you already know how to apply an "EXISTS"
statement in SQL, understand CanCan's documentation upon reading it,
and have interfaced with a web API, you will have the skills for this
project.

-Sean
> --
> You received this message because you are subscribed to the Privly
> development mailing list. To post to this list, send email to
> pri...@googlegroups.com. To unsubscribe from this group, send email to
> privly+un...@googlegroups.com. For more options, visit this group at
> https://groups.google.com/d/forum/privly?hl=en
>
> Privly testers should also sign up for this list:
> https://groups.google.com/forum/#!forum/privly-test
> ---
> You received this message because you are subscribed to the Google Groups
> "privly" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to privly+un...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>



--
Sean McGregor

Graduate Assistant in Machine Learning
Oregon State University, Department of Computer Science
Twitter: seanmcgregor
Facebook: facebook.com/SeanBMcGregor
irc.freenode.net: smcgregor

Quazi Marufur Rahman

unread,
Apr 14, 2013, 4:01:51 PM4/14/13
to pri...@googlegroups.com
Hi Sean

I know the SQLs EXISTS statement and have worked with cancan. Imposed role on various model(Admin, User). Moreover i have worked with twitter API(fetching user info based on tweets keyword).
Looking forward to hear more from you about the next step(What should I do now to be accepted for this project).

Thanks
Maruf



You received this message because you are subscribed to a topic in the Google Groups "privly" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/privly/p9v0wCmHcVU/unsubscribe?hl=en.
To unsubscribe from this group and all its topics, send an email to privly+un...@googlegroups.com.

For more options, visit https://groups.google.com/groups/opt_out.





--
Quazi Marufur Rahman
Department of Computer Science and Engineering
University of Dhaka
Bangladesh

Sean McGregor

unread,
Apr 14, 2013, 4:29:28 PM4/14/13
to pri...@googlegroups.com
Maruf,

First step is to fix a bug on the repository, from there we can start
iterating on your proposal. For more information, see:
https://github.com/privly/privly-organization/wiki/Guidelines-for-Students-Participating-in-GSOC-2013-for-Privly

You can either find a new bug and fix it, or look at the issue queue.
I recommend this issue as a starter since most of the other issues are
either organizational or too big:

https://github.com/privly/privly-web/issues/82

I sent a development account to your email address.

-Sean

On Sun, Apr 14, 2013 at 1:01 PM, Quazi Marufur Rahman
On Sun, Apr 14, 2013 at 1:01 PM, Quazi Marufur Rahman
irc.freenode.net: smcgregor

Quazi Marufur Rahman

unread,
Apr 15, 2013, 11:37:31 AM4/15/13
to pri...@googlegroups.com
Hi Sean

I couldn't simulate this issue in my system. I have used jquery-rails version '2.1.3' and '2.2.1' and found no mismatch.
May be I am missing something.
Could you please help me fo figure this out?

My system: ubuntu 12.04, firefox 11.0

Thanks

Sean McGregor

unread,
Apr 15, 2013, 12:39:01 PM4/15/13
to pri...@googlegroups.com
Let's move this discussion onto the GitHub issue.

-Sean

On Mon, Apr 15, 2013 at 8:37 AM, Quazi Marufur Rahman

Quazi Marufur Rahman

unread,
Apr 23, 2013, 4:37:12 PM4/23/13
to pri...@googlegroups.com
Hi

I have talked with Sean and here is my understanding about this project. Please fix it if I am wrong. I am considering FB friends and Twitter followers now.

  1. After completing this project there will be two check boxes saying 'share with FB friends' and 'share with Twitter followers'. Suppose a user has checked one or both of them.
  2. Before this process user will provide his
    FB and Twiiter id and privly will fetch his all friends and followers info to its DB.
  3. After step [1] privly will generate a link and user will share it in FB and twitter. Every FB and Twitter user will see that link and they will share it with their friends and followers.
  4. If a browser extension is installed, it will hit show action of posts controller of this rails app. Now privly will verify whether this fb or twitter is a friend of the first user who created it or not. If yes then it will decrypt the link otherwise not.
    This is the authorization part.
  5. For authentication every FB and Twitter user will register in Privly using FB or Twitter account. Privly will let them to access it only using their corresponding email and keep them as 'Privly Verified FB account' or 'Privly verified Twitter account'.
    When they will hit privly to decrypt any message, privly will first authenticate and then authorize them to do so.


Thanks
Maruf


Sean McGregor

unread,
Apr 24, 2013, 1:47:57 AM4/24/13
to pri...@googlegroups.com
Maruf,

See inline comments below.

Best,
Sean

On Tue, Apr 23, 2013 at 1:37 PM, Quazi Marufur Rahman
<maruf...@gmail.com> wrote:
> Hi
>
> I have talked with Sean and here is my understanding about this project.
> Please fix it if I am wrong. I am considering FB friends and Twitter
> followers now.
>
> After completing this project there will be two check boxes saying 'share
> with FB friends' and 'share with Twitter followers'. Suppose a user has
> checked one or both of them.

This should be generalizeable to any identity type. This is an
important notion that requires you to think about what can constitute
identity. As an internet user you can be identified by your email,
domain, domain ownership, FB account, Twitter account, IP address,
GeoIP, etc. You should start with specific "identity providers," but
the approach you propose should emphasize the ability to easily add
additional identity types. This notion is important for future
iterations of the content server where other servers can sign the
requestor's identity.

> Before this process user will provide his
> FB and Twiiter id and privly will fetch his all friends and followers info
> to its DB.
> After step [1] privly will generate a link and user will share it in FB and
> twitter. Every FB and Twitter user will see that link and they will share it
> with their friends and followers.
> If a browser extension is installed, it will hit show action of posts
> controller of this rails app. Now privly will verify whether this fb or
> twitter is a friend of the first user who created it or not. If yes then it
> will decrypt the link otherwise not.
> This is the authorization part.
> For authentication every FB and Twitter user will register in Privly using
> FB or Twitter account. Privly will let them to access it only using their
> corresponding email and keep them as 'Privly Verified FB account' or 'Privly
> verified Twitter account'.
> When they will hit privly to decrypt any message, privly will first
> authenticate and then authorize them to do so.

Have you downloaded the Chrome extension and created a few posts? I
think it will clear a few things up for you.

Quazi Marufur Rahman

unread,
Apr 24, 2013, 2:12:00 AM4/24/13
to pri...@googlegroups.com
Please check inline comment.


On Wed, Apr 24, 2013 at 11:47 AM, Sean McGregor <smcg...@seanbmcgregor.com> wrote:
Maruf,

See inline comments below.

Best,
Sean

On Tue, Apr 23, 2013 at 1:37 PM, Quazi Marufur Rahman
<maruf...@gmail.com> wrote:
> Hi
>
> I have talked with Sean and here is my understanding about this project.
> Please fix it if I am wrong. I am considering FB friends and Twitter
> followers now.
>
> After completing this project there will be two check boxes saying 'share
> with FB friends' and 'share with Twitter followers'. Suppose a user has
> checked one or both of them.

This should be generalizeable to any identity type. This is an
important notion that requires you to think about what can constitute
identity. As an internet user you can be identified by your email,
domain, domain ownership, FB account, Twitter account, IP address,
GeoIP, etc. You should start with specific "identity providers," but
the approach you propose should emphasize the ability to easily add
additional identity types. This notion is important for future
iterations of the content server where other servers can sign the
requestor's identity.

      My idea is to generalize this identity type in third trimester after completing FB and Twitter in second trimester.

> Before this process user will provide his
> FB and Twiiter id and privly will fetch his all friends and followers info
> to its DB.
> After step [1] privly will generate a link and user will share it in FB and
> twitter. Every FB and Twitter user will see that link and they will share it
> with their friends and followers.
> If a browser extension is installed, it will hit show action of posts
> controller of this rails app. Now privly will verify whether this fb or
> twitter is a friend of the first user who created it or not. If yes then it
> will decrypt the link otherwise not.
> This is the authorization part.
> For authentication every FB and Twitter user will register in Privly using
> FB or Twitter account. Privly will let them to access it only using their
> corresponding email and keep them as 'Privly Verified FB account' or 'Privly
> verified Twitter account'.
> When they will hit privly to decrypt any message, privly will first
> authenticate and then authorize them to do so.

Have you downloaded the Chrome extension and created a few posts? I
think it will clear a few things up for you.

        I
have used Firefox extension not Chrome. Ain't they same? I will use it today.

Sean McGregor

unread,
Apr 24, 2013, 12:27:43 PM4/24/13
to pri...@googlegroups.com
I think you will be forced to abstract the identity types earlier than
the third trimester. You will be integrating FB and Twitter with three
existing identity types: Privly verified email address, Privly
verified email domain, and IP address. Abstract these identity types
by adding the requirements of social networks.
Functionally similar, but it has better security properties (locally
served applications, anti-spoofing glyph, etc).

Quazi Marufur Rahman

unread,
Apr 24, 2013, 12:34:24 PM4/24/13
to pri...@googlegroups.com
Ok. That will not be a problem I think. Then what will be the work for third trimester?

Maruf

Sean McGregor

unread,
Apr 24, 2013, 12:46:25 PM4/24/13
to pri...@googlegroups.com
Probably one or both of these:

* Work on ACL management functionality, this includes generating lists
of identity types and allow users to share with these lists
* Make the sharing UI fast and intelligent

-Sean


On Wed, Apr 24, 2013 at 9:34 AM, Quazi Marufur Rahman

Quazi Marufur Rahman

unread,
Apr 24, 2013, 12:55:45 PM4/24/13
to pri...@googlegroups.com
I am good with this. I will submit proposal asap. I have a little confusion.

Lets say a user has created a rule to show his post to FB friends. After that where will he share it? in public website(e.g: wordpress blog) or fb or both? If any of his friends want to see that, he will login to privly first and privly will authorize him to see that content. Is the workflow right?

Sean McGregor

unread,
Apr 24, 2013, 1:49:26 PM4/24/13
to pri...@googlegroups.com
They can share the link anywhere: wordpress, Facebook chat, Reddit, etc.

If the server puts access restrictions on the content, then people
will indeed have to log into the server to prove their identity. Part
of the eventual plan for the content server is to retire content
hosting and to simply act as an identity server, whereby people can
have their identities signed for examination by a distributed network
of hosts. So the current workflow is less than ideal, but it is
functional and working towards the bigger picture.

-Sean

On Wed, Apr 24, 2013 at 9:55 AM, Quazi Marufur Rahman

Quazi Marufur Rahman

unread,
Apr 26, 2013, 2:22:31 PM4/26/13
to pri...@googlegroups.com
On Wed, Apr 24, 2013 at 10:46 PM, Sean McGregor <smcg...@seanbmcgregor.com> wrote:
Probably one or both of these:

 
Hi,
I haven't clearly understand this two features. What are the expected outcome after implementing this?
Reply all
Reply to author
Forward
0 new messages