Privacy-friendly alternative to Login with Facebook
SimpleLogin is built for privacy-conscious site owners and protects your users identity. Open-source, Developer-first, SimpleLogin can be integrated in minutes.
<button onclick="simpleLogin()">
Login with SimpleLogin
</button>
<!-- Include SimpleLogin JS SDK -->
<script src="https://simplelogin.io/sdk/sdk.js"></script>
SL.init("quickstart"); // Your SimpleLogin AppID
function simpleLogin() {
SL.login(function(user){
// This is where you log user in :)
console.log("SimpleLogin user", user);
});
}
import requests_oauthlib, os
# Your SimpleLogin AppID, AppSecret
CLIENT_ID = os.environ.get("CLIENT_ID")
CLIENT_SECRET = os.environ.get("CLIENT_SECRET")
@app.route("/login")
def login():
sl = requests_oauthlib.OAuth2Session(
CLIENT_ID,
redirect_uri="http://localhost:5000/callback"
)
redirect_url, _ = sl.authorization_url(
"https://app.simplelogin.io/oauth2/authorize"
)
return flask.redirect(redirect_url)
@app.route("/callback")
def callback():
sl = requests_oauthlib.OAuth2Session(CLIENT_ID)
sl.fetch_token(
"https://app.simplelogin.io/oauth2/token",
client_secret=CLIENT_SECRET,
authorization_response=flask.request.url
)
user_info = sl.get("https://app.simplelogin.io/oauth2/userinfo").json()
print(user_info["email"], user_info["name"], user_info["avatar_url"])
return "Welcome " + user_info["name"]
# Based on social-auth-app-django library
pip install git+ssh://git@github.com/simple-login/social-core.git@sl
# settings.py
AUTHENTICATION_BACKENDS = [
'social_core.backends.simplelogin.SimpleLoginOAuth2',
'django.contrib.auth.backends.ModelBackend',
]
SOCIAL_AUTH_SIMPLELOGIN_KEY = 'YOUR_APP_ID'
SOCIAL_AUTH_SIMPLELOGIN_SECRET = 'YOUR_APP_SECRET'
<!-- In your login template -->
<a href="{% url 'social:begin' 'simplelogin' %}">Login with SimpleLogin</a>
// config SimpleLogin OIDC
passport.use('SimpleLogin', new OidcStrategy({
issuer: 'https://app.simplelogin.io',
authorizationURL: 'https://app.simplelogin.io/oauth2/authorize',
tokenURL: 'https://app.simplelogin.io/oauth2/token',
userInfoURL: 'https://app.simplelogin.io/oauth2/userinfo',
clientID: process.env.CLIENT_ID, // SimpleLogin AppId
clientSecret: process.env.CLIENT_SECRET, // SimpleLogin AppSecret
callbackURL: process.env.URL + '/authorization-code/callback',
scope: 'openid profile'
}, (issuer, sub, profile, accessToken, refreshToken, done) => {
return done(null, profile);
}));
// show user info
app.use('/profile', (req, res) => {
console.log("user:", req);
res.render('profile', {
title: 'User Info',
user: req.user._json
});
});
Created by developer for developer
SimpleLogin is compatible with all Oauth2/OpenID Connect libraries.
As a software engineer, I like SimpleLogin concept and its streamlined development experience.
There are some solutions with a similar purpose, but none of them is transparent for users. Or simple enough for developers to integrate.
Finally, a service that makes people conscious about PRIVACY. And helps developers bring trust to their brand identity in a SIMPLE way.
Frequently asked questions
알고 계셨습니까? Facebook과 Google은 이러한 버튼으로 이용자들의 브라우징 히스토리를 추적해서 더욱 개인화된 광고를 제공합니다.
SimpleLogin은 광고 업체와 관련이 없으므로, 당신의 데이터를 사용해서 얻을 수 있는 이득이 없어 사용자가 자신의 데이터에 대한 완전한 통제권을 가질 수 있습니다.
SimpleLogin의 모든 코드는 GitHub에서 완전한 오픈 소스입니다
누구나 코드를 감사하거나 자신만의 SimpleLogin 서버를 구축할 수 있다는 뜻입니다.
SimpleLogin의 수익구조는 투명하고 지속가능한 모델에 기반하여 프라이버시를 최우선하고 추적기가 없는 상품을 제공할 수 있습니다.
당연합니다! 저희가 웹 플랫폼부터 시작한 것은 심플하게 그것을 Android WebView와 IOS UIWebView를 통한 모바일 앱으로도 이용할 수 있기 때문입니다.
머지 않아 Android, iOS, Windows용 SDK와 예제를 제공할 계획입니다. 지켜봐 주세요!