All posts by Itay Herskovits

Back to blog home page

Meet Backand’s New Serverless SDK

Posted by on Feb 14, 2017

Backand is proud to announce our new Serverless SDK. With the launch of this SDK, we offer super-easy access to all core functionality of our powerful backend-as-a-service. We also have compartmentalized our SDK to allow for easy integration on multiple major serverless app development platforms.

In this post, we’ll walk through the new Serverless SDK structure. We’ll outline the core functionality, take a look at the new platform-specific SDKs, and then provide a few examples of how to easily work with Backand in your application.

Serverless SDK Functionality

The Backand Serverless SDK offers quick and easy access to core Backand app functionality:

  • Authentication and Security – The SDK provides easy-to-use functions that wrap all of the functionality necessary to authenticate users with your application, whether via a custom user structure, or by leveraging social media providers for authentication.
  • Object Manipulation – The Backand Serverless SDK offers intuitive and flexible methods that you can use to interact with objects in your Backand application. These are available in the SDK under the ‘object’ property – simply provide the name of the object you wish to work with, and you’re ready to go!
  • Custom Actions and Queries – The SDK offers quick and easy ways to access the custom actions you have defined in your Back& application, again via the ‘object’ interface. We also offer a ‘query’ object, which allows you to easily leverage custom SQL queries built for your application’s specific database needs.
  • File Management for Node.JS Actions – This release makes working with custom server-side Node.JS JavaScript actions a snap. Simply access the ‘file’ property of the Backand SDK, and you can easily add or remove files from your server-side Node.JS action.
  • Quick and Easy Real-time Functionality – Through our integration with Socket.io, you can easily add real-time communication features to your application. Simply make use of the “.on” event handler to subscribe to broadcast events, and you are ready to go!

New SDK Structure

The original SDK was fully built out for each platform on which it was offered. This led to a lot of duplication in functionality. Recognizing this, we’ve chosen a new approach that lets developers more easily work with the SDK on their chosen platform. Below is a quick list of the available SDKs that comprise our Serverless SDK, and how they work together:

  • https://github.com/backand/vanilla-sdk – This is our plain vanilla JavaScript SDK. It can be used with any web application via simple includes. All other SDKs wrap this project and depend upon this project.
  • https://github.com/backand/angular1-sdk – This is our Angular 1 wrapper SDK. This wraps the Vanilla SDK, providing objects and services for Angular 1-based apps that make the SDK a snap to integrate.
  • https://github.com/backand/angular2-sdk – This is our Angular 2 wrapper SDK. Similar to the Angular 1 SDK, it wraps the Vanilla SDK’s functionality with several useful Angular 2 objects, encapsulating all of the functionality into an easy-to-use service provider object.
  • https://github.com/backand/redux-sdk – This is our Redux/ReactJS wrapper SDK. It offers tools to construct all of the Actions, Reducers, and Types necessary to work with the underlying Vanilla SDK, making it very easy to integrate Back& with your Redux application.

Improvements over the previous SDK

In addition to refactoring the code to more closely match how it is used by developers, we’ve made several changes that make working with Back& easier than ever:

  • No more $http – The original SDKs were built around web requests sent with the $http object. All of this has been encapsulated within the SDK, allowing you to replace complex and obtuse JavaScript dedicated to constructing a request with a simple, one-line function call.
  • Promises – The new SDK returns objects as promises, allowing you to more easily handle the responses from your app’s backend in an asynchronous manner. Simply define your callbacks and provide them to the SDK using the ‘.then()’ and ‘.catch()’ functions.
  • Easy Social Sign-On – The new SDK provides quick and easy integration with social media providers, handling all of the back-end complexity of user management and authentication so that you can focus on what makes your app unique.
  • Token Management – Gone are the days of having to manually construct headers – the SDK handles authentication and authorization tokens on your behalf. Simply tell the SDK when someone has signed in or signed out, or even enable anonymous authentication – all with easy-to-use function calls.

Conclusion

Our goal at Backand is to help developers and organizations more easily achieve their application development goals. With the release of our Serverless SDK, we’ve made huge strides in usability and availability of our SDK. You can read more in our documentation, take a look at our Vanilla SDK for an overview of the API, or begin working with the examples on our Github page. With Back&’s new Serverless SDK, you’ll find that creating a cross-platform and cohesive Progressive Web App experience is easier than ever.

Don’t have a Backand account? You can get one for free

Back to blog home page

Authentication-as-a-Service: Auth0 vs. Backand

Posted by on Feb 09, 2017

Authentication-as-a-Service (or AaaS) is focused on encapsulating the business functionality around user authentication. Using a AaaS provider, such as Backand or Auth0, lets you easily integrate with an authentication system, and focusing your efforts on the unique aspects of your app that deliver the most value to your users.

Auth0 is one of the most popular Authentication-as-a-Service (sometimes also referred to as Identification-as-a-Service or IDaaS) providers, allowing developers to easily integrate with authentication providers, such as Google, Facebook, Twitter and others. Auth0 ships with integrations to multiple social media providers, as well as a custom user management scheme. In this article, we’ll take a closer look at the features Auth0 has to offer, and how they compare with Backand’s authentication functionality.

Choosing an AaaS Provider

It is important to note from the start that Auth0 and Backand have different targets. Auth0 is a pure-play Authentication-as-a-Service, and designed to work as one component within a larger application. Backand has a broader scope, providing Backend-as-a-Service (BaaS or MBAaaS) functionality. As such, the feature set Backand has to offer will be more robust. You can build parts – maybe even significant components – of an application with Auth0, but you’ll ultimately either need to provide a server or some other kind of back-end functionality. With Backand, you don’t need anything else – all of your tools are available at your fingertips, and you don’t need to work with any external providers.

While Auth0 has a number of robust features related to security, and more focus on provider authentication integrations, ultimately you’re still faced with the fact that when you’ve implemented all of the features Auth0 has to offer, you’ll still need a back-end application to implement them in. Backand offers you most of the same features as Auth0, but also gives you all of the tools you need to build your app in a completely serverless fashion. With Backand, all of your functionality, security, and business rules can be implemented in the same place, providing a singular access point that makes maintenance, troubleshooting, and integration of the final results easier than a multi-tenant system leveraging multiple solutions.

Comparing Auth0 and Backand

Below is a quick feature-by-feature comparison of Auth0 and Backand:
comparison table of Auth0 and Back&

Conclusion

Auth0 is a robust and full-featured Authentication-as-a-Service provider. They offer  user registration, authentication, and user security. However, Auth0 is not powerful enough to fully replace your application’s back end, Backand, by comparison, offers most of the same features: Single Sign On, user registration and authentication, social media provider plugins, security-related callback functionality, and more – along with the additional features you need to fully develop, maintain, and even host your application. Depending on your use case, Auth0 may be right for your application, but if you’re looking to build a serverless application, you’ll be better off working with Backand.

Back to blog home page

Authenticate Angular with Azure Active Directory Using Backand

Posted by on Jan 17, 2017

Last week, we discussed at a high level using Azure Active Directory for SSO with Backand. This week, we’re taking a deeper dive into how to do it.

Most apps of a non-trivial nature will, at some point, need to tackle user authentication. While a custom user management system can be a good option, usually you can save some development time by offloading your registration, authentication, and verification functionality to a third party.

If you’ve been working on a hybrid app using tools like Ionic, AngularJS, and Backand, you are given access to multiple authentication options provided by third parties due to Backand’s extensive integration with authentication providers.

Microsoft Azure is one such option that’s growing in popularity among developers and users. Below we’ll look at the steps necessary to integrate Azure Active Directory (Azure AD) and Active Directory Federation Services (ADFS) into your Backand-powered hybrid app.

Configuring Azure AD

Azure AD is Microsoft’s multi-tenant cloud-based directory and identity management system. It allows you to quickly incorporate Azure AD-based Single Sign On into your application, giving you access to thousands of users in the Microsoft ecosystem that will now be able to use your app without having to go through the headache of registration and verification. By leveraging Microsoft’s software in the cloud, you can both reduce your development budget and provide a level of ease-of-use to your users that is becoming the standard in many corners of the web.

To integrate your app with Azure AD, you first need to register your application with Azure. To do so, follow these steps:

  1. Log into the Azure portal at https://portal.azure.com
  2. Select “Azure Active Directory” from the navigation menu on the left(1)
  3. Select “App Registrations”
  4. Click “Add”, and use the following parameters for your new application:
    a) Name: Backand
    b) Application Type: Native
    c) RedirectURI: https:///api.backand.com/1/user/azuread/auth
  5. Click “Create”
  6. Click on the new Backand app, and copy down the Application/Client ID. An example value is 7c799275=11-2=4aa6=b36a-fac7aa7fee60
  7. Click on the “Endpoints” menu and copy the “OAUTH 2.0 AUTHORIZATION ENDPOINT” URI(2)

Notes:
(1) If you do not have an Azure AD subscription, this page will show a warning indicating that you do not have access. You’ll either need to contact the admin for your Azure AD account, or register a trial developer account to continue. Consult Microsoft’s documentation in this case
(2) For Backand applications, only a portion of the OAuth 2.0 Authorization Endpoint – copy everything in the URI up to and including “/oauth2”, and ignore the remaining components of the URI.

At this point, you’re ready to integrate Azure AD into your Backand Dashboard. But first, let’s explore how to configure ADFS.

Configuring ADFS

If you’re not comfortable having a third party own your user’s data, you can connect your application to a local implementation of Active Directory Federated Services, or ADFS. ADFS provides you with all of the functionality of Microsoft’s ActiveDirectory infrastructure, but without having to compromise your organization’s IT security by integrating an internet product into the stack. To integrate your app with a local ADFS installation, follow these steps:

  1. Open a Windows Shell on your ADFS server with Administrator privileges (right click cmd.exe and select “Run as Administrator”)
  2. Run the Add-AdfsRelyingPartyTrust with the following parameters (adjust the defaults as necessary):
    Authenticate Angular with Azure Active Directory using Backand
  3. Run Add-ADFSClient to register Backand as a client application within your ADFS install.(1) Make note of the ClientId and RedirectUri you use here – you will need them later:
    Authenticate Angular with Azure Active Directory using Backand
  4. Run the following command to configure Persistent Single Sign-On, and allow your application to display the “Keep me signed in” checkbox:(2)
    Authenticate Angular with Azure Active Directory using Backand

Notes:
(1) You can set ClientID to any valid GUID value. Obtain new GUID values here.
(2) -KmsiLifetimeMins accepts Minutes as a parameter. The value presented here is 30 days’ worth of minutes (60 * 24 * 30) – you can change this to whatever value better matches your organization’s security policies.

Once this is complete, you’re ready to configure Backand to connect to your internal ADFS system.

Connecting to your Backand App

At this point, you a client ID and a URL for your Azure AD or ADFS install. To configure your Backand application to use these links, you just need to make a few more changes in the Backand dashboard:

  1. Log into the Backand dashboard at https://www.backand.com
  2. Find your Backand application on the dashboard, and select “Manage App”
  3. Navigate to Security & AuthSocial & Keys using the navigation menu on the left
  4. To enable an Azure AD integration:
    a) Click the toggle button next to “Use your credentials when signing in with Azure AD” to begin using your custom integration(1) 
    b) Paste your Client ID into the field marked “Client ID”
    c) Paste your OAuth 2.0 Endpoint URI into the field marked “OAuth 2.0 Endpoint” 
  5. To enable a custom ADFS integration:
    a)Click the toggle button next to “Use your credentials when signing in with Azure AD” to begin using your custom integration(2)

    b) Paste your Client ID into the field marked “Client ID”
    c) Paste your OAuth 2.0 Endpoint URI into the field marked “OAuth 2.0 Endpoint” 

Notes:
(1) By default, Backand apps are configured to use Backand’s internal integration with Azure AD. This means that your users will see the provider as “Backand” when they log in. If you wish to change this, follow the instructions above for obtaining a new Azure AD Application ID
(2) As with Azure AD, Backand apps are configured to use Backand’s internal integration with an ADFS installation. This means that your users will see the provider as “Backand” when they log in. If you wish to change this, follow the instructions above for connecting your ADFS installation to your Backand app.

Once this is complete, you’re ready to implement authentication with Azure AD and ADFS in your hybrid app! You can use the process laid out in our Ionic sample application on market.ionic.co – Easy Starter with Social Login – to implement the sign-on page; simply modify the portions using Google and Facebook login to connect to either Azure AD or ADFS instead, and you are set.

Conclusion

By using a system like Azure AD or ADFS, you can quickly and easily centralize both your user management and registration functionality in a common provider. This allows you to easily work your hybrid Backand application into your organization’s authentication system, leveraging the tools you are already using to manage your IT infrastructure more efficiently. By circumventing the need to create a custom login process, you can also reduce your development time and testing process, saving you research and development costs. For more information, visit https://www.backand.com for code samples, tutorials, and more.

Back to blog home page

Single Sign-On with Azure Active Directory and Backand

Posted by on Jan 11, 2017

Most internet users have accounts with many different service providers. As these providers have grown, they have also opened up their authentication systems to third-party developers. By leveraging these authentication systems, third party apps can reduce their scope and complexity, offloading user registration, verification, and authentication to a package solution like Google Plus, Github, Facebook, or Azure AD (Active Directory).

Building on this functionality, many providers offer Single Sign-On (SSO) functionality.   Continue reading

Back to blog home page

Free Hosting and 30% Off All Plans

Posted by on Dec 15, 2016

As 2016 draws to a close, we at Backand —  the super-powerful backend-as-a-service — are delighted to offer you some holiday gifts. We hope you like them.

2017 Annual Plans

Now there’s a new way to save on your Backand plan. Choose any of our plans, billed as a one-time payment for 12 months, and enjoy 20% off! Do it by December 31, 2016, and we’ll make it a 30% discount.

To add even more cheer to your year, sign up to an annual plan by December 31, 2016 and receive 1 terabyte of FREE hosting for the entire year. It’s fast, reliable and secure, and gives you everything you need for your hosting, including built-in SSL encryption, optional CDN and custom domain.

Year-End 30% Discount

Not quite ready to commit to an annual plan? That’s ok. Subscribe to a new monthly plan or upgrade an existing monthly plan by December 31, 2016 and we’ll give you 30% off for the first 3 months of 2017.

Grab your free gifts before they are gone by replying to this email and letting me know which plan you want. Just like the year, this offer expires December 31st.

How to take advantage of these offers

If you currently have a Backand account, you should have received an email from us about this. Simply reply with the plan you want. Alternatively, use this form to contact us.

You can also click on the little message icon at the bottom-right of this page. screenshot-2016-12-15-11-50-53

For details of our full-price month-by-month plans, visit our pricing page.

Don’t have a Backand account yet? What are you waiting for? Sign up for free.

 

Back to blog home page

Platforms for ChatBots in a Post-App World

Posted by on Dec 11, 2016

As the Internet moves towards a post-app world, a world where content is delivered via bots, many different types of content providers are rising to prominence. The most popular of these providers will be  the basis for the continued growth of the post-app Internet, and as such it makes sense to get a feel for what capabilities are currently available for bot-writers looking to leverage one of the more popular sites to drive their efforts. Below we’ll look at a few of the options available for integrating with a bot, and deep-dive into one — Facebook Messenger — to see what an integration might look like.

Continue reading

Back to blog home page

New Feature: Facebook Graph API Support

Posted by on Dec 06, 2016

We’re pleased to announce Backand support for the Facebook Graph API. The Graph API gives your application access to user’s Facebook profiles (with their permission, of course). With it, you can retrieve data such as birthdays, friends list and profile photos and enrich the data of your app running on the Backand, backend-as-a-service (BaaS).

Retrieving data from Facebook using the Graph API

To retrieve data from Facebook using the Graph API, get the Facebook user ID after the user signed up to your Backand app. Once you have the Facebook user ID, use the Facebook graph API to retrieve data or perform other actions.

To get the Facebook user ID (FUID) in Backand, follow these steps:

  1. Open Security & Auth >> Security actions menu and Edit “beforeSocialSignup” action
  2. Change the Where Condition to true (bottom of the page)
  3. Uncomment the code that saves the Facebook user id:userInput.fuid = parameters.socialProfile.additionalValues.id;
  4. Save the Action

Next you need to add the fuid field in the users object:

  1. Open the model page under objects menu
  2. Add new Field in the users object named fuid
  3. Click Validate & Update and Ok in the dialog

Now, when a user signs up to your app using Facebook as a social login provider, you will see the users’s FUID in the users object.

Getting Facebook data in Backand code

Once you have the Facebook user ID, use the Graph API to access any available Facebook data.

  1. The FB Graph API docs
  2. You also would need access token of your app, use this FB tool to get it.
  3. More FB tools
  4. For example, to get a user’s friends use the following JavaScript action code:

Getting a Facebook profile image

To get the Facebook profile image you just need to point to the following URL with a correct FUID:

http://graph.facebook.com/{fuid}/picture

or

http://graph.facebook .com/10209560720107355/picture?type=large

You can also review Facebook’s docs on how to use the Graph API.

​Don’t have a Backand backend-as-a-service account? Why not get one now?  Get Free Backand Account.

Back to blog home page
Back to blog home page

How to Build a Facebook Messenger Chatbot in 10 Minutes

Posted by on Sep 20, 2016

The new Facebook Messenger platform, announced back in April, lets developers write bots, or automated chat programs, that drive user engagement and provide value in an intelligent and interactive way.

In this series of articles, we’re going to take a look at what it takes to build out a Facebook Messenger chat bot, with Backand serving as the back-end. This article will cover creating the Facebook app, tying it to a Backand, then testing the pairing. Future articles will cover what is happening on the back-end in greater depth, as well as integrating with third-party providers to create even more interesting content for your users.

Continue reading

Back to blog home page

Bots, BaaS and the Death of Apps

Posted by on Sep 14, 2016

The release of the first iPhone in 2008 gave developers an entirely new medium in which to provide content – the mobile app. While mobile apps had existed prior to the launch of Apple’s AppStore, it was the iPhone that truly pushed smartphone apps into the public consciousness.

Apps have advantages over their mobile web app counterparts – they are fast, they can operate in an environment with minimal connectivity, they allow app developers to provide a cohesive mobile-first experience – but they are not without their drawbacks. Take music apps as an example. At the moment, your average Android phone will have, at a minimum, the built-in music player and the Google Play store. This allows you to access and purchase music from Google Play, but if you want to include any music from Amazon Prime, you need to install the Amazon Music app. These walled gardens are frustrating for users, and as a result many prognosticators are looking for what a post-app world might look like. In this post, we’ll take a look at what a post-app world is, and how a Backend-as-a-Service, such as Backand, can enable it.

Continue reading