One login to all OC Nodes ?

You want to get involved in the Opencaching Network?
sp2ong

Hi,

I have look solution to add OC Code for one login to all OC Nodes without register on every Node. I am not sure that solution with OpenID will be Ok. On every Node we start client/server OpenID OC and when we want to login to not local OC Node for log entry or others we can use OpenID login instead typical username/password. On Local node we login traditional username/password. But what happen when on not local node will be exist username which we use on local ? we can do in code that when user login by OpenID add to username country code from profile OpenID user for exampel sp2ong[PL] will be add to db when I login via OpenID to OC DE. Now when we use API REST to synchronize of Nodes hav to import stat info to local Node for show on local Node info in profile about caches founded on local node (no problem) and on other Nodes. During synchronize via API OC PL will be ask OC DE any info about users in DB which has [PL] in username and transfer info to local Node ?

P
maltee_h

I like this idea!
DudleyGrunt

I believe that this concept would be a good one to try to implement.
Benutzeravatar
mic@
Vereinsmitglied
Vereinsmitglied
Beiträge: 6623
Registriert: 04.12.2009, 00:31

[quote="sp2ong"]...we can use OpenID login instead typical username/password. On Local node we login traditional username/password.[/quote]
So You offer two different login-procedures? Why?
I thought OpenID is able to login whereever You like...
zaanhoeve

As known Iḿ not a scriptwriter, but now the user id is a number. there could be added a field with the node code; OC, PL, OB. than the user can get subtracted from the Db with a cronjob generating a xml that could loaded by every node by cron job?

How do you integrate any system with the forum?

just a thought
zaanhoeve

reading the topic [url=http://forum.geocaching-network.com/http://localhost//viewtopic.php?t=2]one site?[/url]

One Data base with different sites connecting to is will make one login. De O? code could be depending by selecting the country.
oliver

[quote="zaanhoeve"]
As known Iḿ not a scriptwriter, but now the user id is a number. there could be added a field with the node code; OC, PL, OB. than the user can get subtracted from the Db with a cronjob generating a xml that could loaded by every node by cron job?[/quote]

In german code, there already is an field node (tinyint) to differenciate the origin of the record to permit different edit rights. The node attribute is stored in table cache, cache_desc, cache_logs, picture and user. Along with date_created, date_modified and the uuid for synchronisation. There is also a table "nodes" where all nodes with their internal ids are noted.

cronjob and plain sql extractions will not be robust, fault tolerant and reliable. It will also be a very limited solution. Its a polling approch - for node synchronisation we should have a nearly real time push-method.

We (waldek and i) talked before some months about the openid-option. Our problem is that we do not have anybody who is realy familar with openid-concept, code or plugins. The main options are (1) install openid-server and authenticate OC-users against that new server (2) implement openid-provider in OC source and host an openid provider inside OC source.

Problem with (1): The registration process needs to be reinvented - at registration, the user has to be created in openid server and in OC code. The OC code will then be a openid-client.
Problem with (2): openid protocol is complex and plugins for that purpose needs some knowledge and initial work to get running. But i think that (2) is the better way, once we get it running ...

I have done some work on synchronisation daemon before some months (not ready for use until now). With that solution, the table 'user' is already sychronized, so we only need to transfer the email and password md5 to certain nodes to allow login on more than one OC site.

Some other preparation is required as sp2ong noted - e.g. we need to display the master node of that user to differenciate between "Oliver [DE]" and "Oliver [PL]".
sp2ong

OpenID it is one of solution but if anybody know other soultion or have other idea to give us possibility login with one account to other nodes will be welcome
opencaching.su

[quote="sp2ong"]
Hi,

I have look solution to add OC Code for one login to all OC Nodes without register on every Node. I am not sure that solution with OpenID will be Ok. On every Node we start client/server OpenID OC and when we want to login to not local OC Node for log entry or others we can use OpenID login instead typical username/password. On Local node we login traditional username/password. But what happen when on not local node will be exist username which we use on local ? we can do in code that when user login by OpenID add to username country code from profile OpenID user for exampel sp2ong[PL] will be add to db when I login via OpenID to OC DE. Now when we use API REST to synchronize of Nodes hav to import stat info to local Node for show on local Node info in profile about caches founded on local node (no problem) and on other Nodes. During synchronize via API OC PL will be ask OC DE any info about users in DB which has [PL] in username and transfer info to local Node ?

P
[/quote]

1. I think Opencaching node should *not* be an OpenID provider. It is too big responsibility for an Opencaching node. I would rather accept OpenIDs of other providers, because big companies (like Google or Yandex) will serve better (e. g. provide 24*7 availability, etc).

2. An OpenID is world-wide unique because it includes name of provider site and name of user at that site. For example, my OpenID is google.com/profiles/opencaching.su. Some OpenID providers may handle shorter IDs, for example, OpenID provided by Yandex looks like opencaching-su.ya.ru. The only issue that this is rather long string.
Zuletzt geändert von opencaching.su am 21.12.2010, 02:24, insgesamt 1-mal geändert.
sp2ong

[quote="opencaching.su"]

2. An OpenID is world-wide unique because it includes name of provider site and name of user at that site. For example, my OpenID is google.com/profiles/opencaching.su. Some OpenID providers may handle shorter IDs, for example, OpenID provided by Yandex looks like opencaching-su.ya.ru. The only issue that this is rather long string.
[/quote]

Yes but one problem with OpenID provider outside OC server is that this same exist short time for exmaple in Poland was openid.pl now is not allow create account. When we have own Server OpenID we can modify information which will be exchanged during process login for example transfer OC Node , Home XY Coordiantes usere if user allow this. You can start up own OpenID Server use Community-ID system which is OpenSource and powerfull with support OpenID 2.0 and http://source.keyboard-monkeys.org/projects/show/communityid What importat when we run own OpenID server we are control our data, accounts etc

I have run long time ago  for test:  openid.opencaching.pl server


For example it is look that SMF Forum which we use is possible enable OpenID login: http://www.simplemachines.org/community/http://localhost//viewtopic.php?t=5
Zuletzt geändert von sp2ong am 21.12.2010, 07:28, insgesamt 1-mal geändert.
zaanhoeve

Hello

I made an account on the open ID server. What is holding us back to implement it on the nodes?

Regards Kees
sp2ong

I have simple script to check of login by OpenID you can try

http://www.opencaching.pl/api/openid.php

after login this script return about correct Authentication by OpenID login where your uri is: http://openid.opencaching.pl/identity/xxxx
where xxx is your username


You can add to your PHPBB Forum mod OpenID to allow login to forum with openid: http://www.phpbb.com/community/viewtopic.php?f=70&t=1666925
Zuletzt geändert von sp2ong am 21.12.2010, 11:11, insgesamt 1-mal geändert.
opencaching.su

[quote="sp2ong"]
Yes but one problem with OpenID provider outside OC server is that this same exist short time for exmaple in Poland was openid.pl now is not allow create account.
[/quote]

I see that site is still working. It does not allow to create new accounts? Does it still work as OpenID provider for already registered users?

Yes, unreliable OpenID provider is a problem, but you have to be careful and choose highly reliable OpenID provider, because it is very important. You trust your net identity to the provider. I am not talking about real name or home coordinates -- they may be fictional. But if OpenID provider closed, your will lost your ownership of blogs, forum messages, caches.

That is the exact reason for my opinion OC should not be OpenID provider at all. Opencaching servers are run by volunteers, there is no guarantee a particular Opencaching node will run forever. If the node closed, users will not lose their caches (I assume they will be mirrored to other nodes eventually), but users will lose their identity (probably on many sites) and cache ownership. To me it is too much responsibility, even if I (as an opencaching node owner) guarantee nothing.

Sidenote: I said I assume caches will be mirrored eventually. I do not know for sure, but I think identity cannot be mirrored, can be?
oliver

[quote="opencaching.su"]Sidenote: I said I assume caches will be mirrored eventually. I do not know for sure, but I think identity cannot be mirrored, can be?[/quote]

In the concept i am thinking and testing ... the "user" table is replicated the same way as the cache-table. With one difference: email and password-md5 will only be replicated to those nodes that the individual user flagged to be "trusted". If one node goes permanently offline, the user records can be migrated to other nodes without bigger problems (in cooperation with the old site owner).
sp2ong

[quote="opencaching.su"]


I see that site is still working. It does not allow to create new accounts? Does it still work as OpenID provider for already registered users?

[/quote]

I have installl again OpenID Server with new version of OpenID Server Provider which support OpenID 2.0. Becasue it is new server running only for test and you can create account. I have deleted old version half year ago becasue I have not idea how to integrate with OC Code. Maybe now when I have use ZEN FrameWork with script which check login from openid.opencaching.pl we can use function from login.php to openid.php which return information that user login correct via openID server. but I am not sure. Please use openid.opencaching.pl to any test in local sites. If we find solution how to integrate OpenID with OC code we can use this in production version.

Oliver you can install own OpenID Server Provider for local test use http://source.keyboard-monkeys.org/projects/show/communityid
like openid.opencaching.de.
Antworten