README ====== Astakos is an identity management service, built by GRNET using Django (https://www.djangoproject.com/). Learn more about Astakos at: http://code.grnet.gr/projects/astakos Consult COPYRIGHT for licensing information. About Astakos application ------------------------- This package contains the Django application that implements all identity management functions. How to run ---------- Use snf-webproject to run Astakos automatically. To use Astakos in a custom Django project, add ``astakos.im`` to ``INSTALLED_APPS``. Astakos requires South (http://south.aeracode.org/). Also, add the following to your ``settings.py``:: TEMPLATE_CONTEXT_PROCESSORS = ( ... 'astakos.im.context_processors.cloudbar', 'astakos.im.context_processors.im_modules', 'astakos.im.context_processors.next', 'astakos.im.context_processors.code', 'astakos.im.context_processors.invitations') AUTHENTICATION_BACKENDS = ('astakos.im.auth_backends.EmailBackend', 'astakos.im.auth_backends.TokenBackend') CUSTOM_USER_MODEL = 'astakos.im.AstakosUser' LOGIN_URL = '/im' Settings -------- Configure in ``settings.py`` or a ``.conf`` file in ``/etc/synnefo`` if using snf-webproject. ============================== ============================================================================= =========================================================================================== Name Default value Description ============================== ============================================================================= =========================================================================================== ASTAKOS_AUTH_TOKEN_DURATION one month Expiration time of newly created auth tokens ASTAKOS_TWITTER_KEY Twitter ``oauth_token`` ASTAKOS_TWITTER_SECRET Twitter ``oauth_token_secret`` ASTAKOS_DEFAULT_USER_LEVEL 4 Default (not-invited) user level ASTAKOS_INVITATIONS_PER_LEVEL {0:100, 1:2, 2:0, 3:0, 4:0} Number of user invitations per user level ASTAKOS_DEFAULT_FROM_EMAIL GRNET Cloud ``from`` parameter passed in ``django.core.mail.send_mail`` ASTAKOS_DEFAULT_CONTACT_EMAIL support\@cloud.grnet.gr Contact email ASTAKOS_DEFAULT_ADMIN_EMAIL support\@cloud.grnet.gr Administrator email to receive user creation notifications (if None disables notifications) ASTAKOS_IM_MODULES ['local', 'twitter', 'shibboleth'] Signup modules ASTAKOS_FORCE_PROFILE_UPDATE True Force user profile verification ASTAKOS_INVITATIONS_ENABLED True Enable invitations ASTAKOS_COOKIE_NAME _pithos2_a ``Key`` parameter passed in ``django.http.HttpResponse.set_cookie`` ASTAKOS_COOKIE_DOMAIN None ``Domain`` parameter passed in ``django.http.HttpResponse.set_cookie`` ASTAKOS_COOKIE_SECURE True ``Secure`` parameter passed in ``django.http.HttpResponse.set_cookie`` ASTAKOS_IM_STATIC_URL /static/im/ URL to use when referring to static files ASTAKOS_MODERATION_ENABLED True If False and invitations are not enabled newly created user will be automatically accepted ASTAKOS_BASEURL \http://pithos.dev.grnet.gr Astakos baseurl ASTAKOS_SITENAME GRNET Cloud Service name that appears in emails ASTAKOS_CLOUD_SERVICES ({'icon': 'home-icon.png', 'id': 'cloud', 'name': 'grnet cloud', 'url': '/'}, Cloud services appear in the horizontal bar {'id': 'okeanos', 'name': 'cyclades', 'url': '/okeanos.html'}, {'id': 'pithos', 'name': 'pithos+', 'url': '/ui/'}) ASTAKOS_RECAPTCHA_PUBLIC_KEY Recaptcha public key obtained after registration here: http://recaptcha.net ASTAKOS_RECAPTCHA_PRIVATE_KEY Recaptcha private key obtained after registration here: http://recaptcha.net ASTAKOS_RECAPTCHA_OPTIONS {'theme': 'white'} Options for customizing reCAPTCHA look and feel (see: http://code.google.com/intl/el-GR/apis/recaptcha/docs/customization.html) ASTAKOS_LOGOUT_NEXT Where the user should be redirected after logout (if not set and no next parameter is defined it renders login page with message) ASTAKOS_BILLING_FIELDS ['id', 'is_active', 'provider', 'third_party_identifier'] AstakosUser fields to propagate in the billing system ASTAKOS_QUEUE_CONNECTION The queue connection ex. 'rabbitmq://guest:guest@localhost:5672/astakos.userEvent.#' (if it is not set, it does not send messages) ============================== ============================================================================= =========================================================================================== Administrator functions ----------------------- Available as extensions to Django's command-line management utility: =============== =========================== Name Description =============== =========================== activateuser Activates one or more users createuser Create a user inviteuser Invite a user listinvitations List invitations listusers List users modifyuser Modify a user's attributes showinvitation Show invitation info showuser Show user info =============== ===========================