Skip to content
This repository has been archived by the owner on Nov 1, 2018. It is now read-only.

Latest commit

 

History

History
178 lines (142 loc) · 7.59 KB

README.md

File metadata and controls

178 lines (142 loc) · 7.59 KB

This repo is deprecated.

Please go to https://github.com/IBM-Security/verify-sdk-android


Mobile Access SDK for Android

SDK Version Android Version

This repository contains sample apps and code snippets to showcase and provide guidance when developing mobile applications with the IBM Mobile Access SDK. The following steps will help you get started.

Looking for the iOS version?

① Getting the SDK

To access the SDK you need to sign in with an IBM ID account. Create your free IBM ID and navigate to Fix Central to download the SDK.

SDK Version API 21 API 22 API 23 API 24 API 25 API 26 Gradle Version Comments
v1.2.6 Yes Yes Yes Yes Yes (Targeted) No 2.3.3 Usage of Fingerprint capabilities require API >= 23

② Configuring your environment

The SDK can be used in Android Studio.

See our instructions on configuring your project with the SDK.

③ Sample apps and code snippets

Available samples and snippets include:

Name Type Description
MFA Fingerprint, PIN & Username/Password Sample This example demonstrates registering & authenticating a fingerprint or PIN with IBM MFA. In particular, this demonstrates quick login (after Username/Password login) with the on-device biometric or PIN.
MMFA Device Registration Sample This example demonstrates registering a device with IBM MMFA.
OAuth token using ROPC grant Sample This example demonstrates acquiring and refreshing an OAuth token.
Invoke username password policy Sample This example demonstrates invoking the username password policy.
QR code scanning Sample This example demonstrates scanning a QR code for one-time password (OTP) generation or multi-factor authentication (MMFA) with ISAM.
Get OAuth token Snippet The SDK supports the ROPC grant flow.
Certificate pinning Snippet Compares a certificate stored in the mobile app as being the same certificate presented by the web server that provides the HTTPS connection.
Key pair generation Snippet Key pairs are used in the SDK to sign challenges, coming from IBM Security Access Manager. The private key remains on the device, whereas the public key gets uploaded to the server as part of the mechanisms enrollment.
Signing data Snippet The public key would be stored on a server and provide the challenge text to the client. The client uses the private key to sign the data which is sent back to the server. The server validates the signed data against the public key to verify the keys have not been tampered with.

④ IBM Verify

IBM Verify is a mobile app for multi-factor authentication (MFA) with IBM Security Access Manager (ISAM). IBM Verify features:

  • One-time password (OTP)
  • Device registration and enrolment
  • Multi-tenant services for push notification
  • Built on the IBM Security Mobile Access SDK

For more information about IBM Verify, navigate to the user guide.

Download on the App Store Get it on Google Play


Terms of Support

The Mobile Access SDK for Android will support continuous delivery for features and security vulnerabilties and defects into the latest stream. Security vulnerabilties and critical defects will be backported into Older SDK Versions. Support is defined as fixing of critical security vulnerabilties and defects. Support does not imply new feature enhancements.

Here's a breakdown of what's supported and what's not Latest SDK Versions (API 25) Older SDK Versions (< API 25)
Android Studio updates Yes No
Java updates Yes No
New features Yes No
Security Vulnerabilties Yes Yes
Critical Defects Yes Yes
Android API version updates Yes No

Security Testing Process

IBM has an internal development and release process for ensuring code quality and to mitigate the risk of vulnerabilities. As part of the development process, all products are scanned by security vulnerability scanning tools to mitigate the risks of at least the following:

https://www.ibm.com/support/knowledgecenter/en/SSW2NF_9.0.3/com.ibm.ase.help.doc/topics/r_sans_cwe_top25_report.html

In addition, IBM Security products are developed and tested according to the best practices outlined in the IBM Secure Engineering Framework

http://www-03.ibm.com/security/secure-engineering/

We do not provide external security certifications for the SDK. IBM recommends professional security scanning be performed on all mobile apps built with the ISAM SDK.


License

The contents of this repository are open-source under this license. The SDK itself is closed-source.

Copyright 2018 International Business Machines

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Google Play and the Google Play logo are trademarks of Google Inc.