Search Results :

×

OAuth Single Sign-On (SSO) for Shopify using Apple as IDP | Shopify Login with Apple


Apple Single Sign-On (SSO) for Shopify Store can be achieved by using our Shopify SSO Application. In this guide, we will go through a guide to configure SSO between Shopify and Apple. By the end of this guide, users should be able to login to Shopify from using their Apple credentials.

Pre-requisite : Single Sign On - SSO Application

To configure SSO into Shopify using Apple as IDP, you will need to install the miniOrange Single Sign On - SSO Application on your Shopify store:

miniOrange Provides Secure Single Sign-On (SSO) access to your Shopify Store(both plus and Non plus Stores).


Step by Step guide for Configuring Apple as IDP for SSO into Shopify

Step 1: Step to get the Redirect URI for OAuth Server

  • Navigate to the miniOrange Single Sign On-SSO application and click on Add identity Provider button.
  • Shopify SSO - single sign on application
  • Select OpenID Connect 1.0 protocol.
  • Shopify SSO - Select OpenID protocol
  • From the list of identity providers (IDPs), select Custom IDP.
  • Shopify SSO - Select Apple as IDP
  • Note down the Callback URL which will be required while configuring SSO.
  • Shopify SSO - Import Apple Metadata
  • Click on Save.

Step 2:  Setup as OAuth Provider

  • First of all, go to https://developer.apple.com, click on Account and Login with your Apple developer account.

    Apple SSO Login into Shopify - Click on account and login
    Apple SSO Login into Shopify - sign in to apple developer
  • Click on Certificates, Identifiers and Profiles in Apple Account.

    Apple SSO Login into Shopify - Click on Certificate and Identifier
  • In the left menu Click on Identifiers and after that click on the Plus Icon (blue color). Click on Continue for the next 2 pages of Apple Account.

    Apple SSO Login into Shopify - Click on Identifier and continue to other page
  • Enter Description and Bundle ID for the App ID. (The Bundle ID should be in reverse-dns style string.)

    Apple SSO Login into Shopify - enter Description and Bundle ID
  • In the Capabilities section scroll down and select sign with apple and Click on Edit link.

    Apple SSO Login into Shopify - Select sign with apple in capabilities section
  • Select Enable as a primary App ID and click on Save. Click on Continue and then click on Register.

    Apple SSO Login into Shopify - Select Enable as a primary App Id
    Apple SSO Login into Shopify - Click on Save and then Continue and thn click on Register
  • In the right corner click on Continue, then click on Register button.
  • Again click the Plus icon (blue color). Select Service IDs and click on Continue.

    Apple SSO Login into Shopify - Click plus icon and Select Service IDs
  • Enter Description and Identifier (Identifier would be your client id - Copy this id and Paste in the above field of Client ID). Click on Continue and then Click on the Register button.

    Apple SSO Login into Shopify - Enter Description and Identifier
  • Click Keys from the left side menu. Click on the Plus icon to register a new key.

    Apple SSO Login into Shopify - Click on Plus Sign to register a new Key
  • Give your Key a name, select Sign In with Apple and click on Configure button.

    Apple SSO Login into Shopify - Give Key a name and select Sign in with Apple
  • Select your Primary ID and click on the Save button. After that at the right corner click on Continue and Register button.


    Apple SSO Login into Shopify - Seect Primary ID
  • Copy the Key ID and Click on the Download button. Once the key is downloaded click on the Done button.

    Apple SSO Login into Shopify - Click on Download and then done
  • In the left menu click on Identifiers.
  • At the right top click on App IDs.
  • Select Service IDs from the drop down menu.

    Apple SSO Login into Shopify - Identifier and select Service IDs
  • Select your Service ID from the List.
  • Select Sign In with Apple and click on Configure button


    Apple SSO Login into Shopify - Select your Service ID and Configure
  • Select the Primary App ID from the drop down, and Enter the Domain (your shopify store domain) and the Redirect URL (callback url from Shopify application) in Domains and Subdomains and Return URLs respectively. Click on the Next button. (You will get the Domain name and Redirect URL from miniOrange SSO application)

    Apple SSO Login into Shopify - Select Primary App ID and enter the Domain Apple SSO Login into Shopify - Enter Redirect URL
  • Verify the details and click on the Done button. After that at the right corner click on the Continue button.
  • Copy the Identifier value and click on the Save button.
  • Enter the Identifier value in the Client ID and copy the downloaded key value in Client secret of the Shopify SSO Application.

    Apple SSO Login into Shopify - Verify details and copy Identifier value
You have successfully completed Apple side configuration.

Step 3:  Generating Secret Key

  • Download the Ruby installer from the following link https://rubyinstaller.org/downloads/ and then install it.
  • Search for the Start command prompt with ruby. Open the ruby command prompt and install the JWT gem by running the following command on the command line: gem install jwt.
  • Copy the below code in a file and save the file with the .rb extension. Keep this .rb file and downloaded .p8 file in the same folder.
  • Enter the below values in the code:
    • Enter the value of key_file as the file name of downloaded key file from Step 1. For example: key_file = 'AuthKey_994H448YX2.p8'.
    • Enter the value of team ID by refereing to the below image.

      Apple SSO Login into Shopify - Get the team ID
    • Enter the value of client id as the value of identifier of service id. for example: 'com.abc.xyz'.
    • Enter the copied value of Key ID from Step 2 in key_id.

                        require 'jwt'
                        key_file = 'key.p8'
                        team_id = ''
                        client_id = ''
                        key_id = ''
                        ecdsa_key = OpenSSL::PKey::EC.new IO.read key_file
                        headers = {
                            kid: key_id
                        }
                        claims = {
                                iss: team_id,
                                iat: Time.now.to_i,
                                exp: Time.now.to_i + 86400*180,
                                aud: 'https://appleid.apple.com',
                                sub: client_id,
                        }
                        token = JWT.encode claims, ecdsa_key, 'ES256', headers
    
                        puts token
                    
  • Open Ruby command prompt and run the above code using the following command ruby filename.rb.
  • You will get your secret key. Copy the secret key.

Step 4:  Configure Apple as an Identity provider (IDP)

  • Navigate back to the miniOrange Single Sign On-SSO application and click on Add identity Provider button.
  • Shopify SSO - single sign on application
  • Select OpenID Connect 1.0 protocol.
  • Shopify SSO - Select OAuth protocol
  • From the list of identity providers (IDPs), select Custom IDP.
  • Shopify SSO - Select Apple as IDP
  • Enter the identity provider (IDP) display name.
  • Now, fill in the required details like Endpoints, Client ID, Client Secret, and Scope.
  • App Name Custom Provider
    App Display Name Choose appropriate Name
    OAuth Authorize Endpoint https://appleid.apple.com/auth/authorize?response_mode=form_post
    OAuth Access Token Endpoint https://appleid.apple.com/auth/token
    Client ID Identifier Value of Service ID
    Client secret ID From Step 2
    Scope email
    Shopify SSO - Import Metadata
  • Click on Save.

Step 5:   Test Connection

  • After saving the IDP configuration, you will be redirected to Test Connection step.
  • Perform test connection before mapping or fetching attributes, test connection ensures that your IDP configuration is correct.
  • Click on Test Connection.
  • Shopify SSO - Apple login page
  • On entering valid apple credentials you will see a pop-up window which as shown in below screen.
  • Shopify Single Sign On SSO SucessTestConnection
  • Click on the Fetch Attributes to fetch IDP attribute.
  • Shopify SSO - Fetch Attributes from IDP

6. Attribute Mapping

  • Click on the + Attribute Mapping button to map attributes between Shopify and Apple.
  • Shopify SSO - Add Attribute Mapping
  • Map the attributes by referring the table below:
  • Shopify SSO - Add Attribute Values
    Attribute Name in Shopify Choose the attribute from the list of predefined attributes
    Attribute Type IDP Attribute
    Attribute Value Select the attribute value you have fetched from your IDP
  • Click on Save.
  • Navigate to the application home page. Click More actions against the configured IDP, and click on Make Default to set your IDP as default.
  • Shopify SSO - Make Default IDP

7.   Testing SSO for your Shopify Store

  • Go to your Shopify Store login page.(https://<your-shopify-storedomain>/account/login)
  • Click on the login button you customized earlier.
  • Shopify SSO - Apple Login Button Test
  • You’ll be redirected to the login page of the IDP you configured in previous step. Log in with your IDP account credentials.
  • You’ll be successfully logged in to your Shopify store.

Troubleshooting

invalid_request

This may be because your primary domain would be different from your Shopify domain. To check your primary domain and make SSO work, follow the steps given here.

shopify_plan_expired

This issue arises when either the trial period of your Development plan is expired. Or if your plan is not auto-renewed from the Shopify end. Contact us at shopifysupport@xecurify.com to resolve the plan upgrade issue and get smooth functioning of the SSO – Single Sign On Application.

invalid_attributes_received

As email is a required entity in Shopify for account creation as well as login operation, Single Sign On is not successful in this case. To resolve this error, please follow given here.

encountered_an_error

When I am performing SSO, I am getting ‘Please verify if Shopify App is installed’ error. To resolve this error, please follow given here.

If your error or query is not listed here, click here to see others.


Frequently Asked Questions (FAQs)


I have followed the steps to set IdP but where can I check SSO?

Follow the steps outlined here. to configure SSO in Shopify with your preferred IDP.

I installed the Shopify SSO application. I clicked on the “SETUP IDP” option but nothing opened up.

Redirection to any other site might be blocked in the browser. Please follow the steps given here to resolve the issue.

When I try to perform SSO, I get redirected to the “Incorrect App Configuration” page and then after subsequent attempts, I get redirected to https://store.xecurify.com/moas/login page.

You might be trying to perform SSO in the different tab of the same browser where you have opened our Single Sign-On – SSO Application or accessed the configuration portal of our application. In this case, SSO will be restricted due to security reasons.
Try to perform Single Sign On in a new incognito/private window or in a different browser in order to make SSO work.

After performing SSO, I want my customers to redirect to the collections or discount offer page.

Follow the steps outlined here. to redirect your customer to collections/cart or any other page.

Choose your preferred Identity Provider and start setting up SSO for Shopify right away



If you are looking for anything which you cannot find, please drop us an email on shopifysupport@xecurify.com

Hello there!

Need Help? We are right here!

support
Contact miniOrange Support
success

Thanks for your inquiry.

If you dont hear from us within 24 hours, please feel free to send a follow up email to info@xecurify.com