IP Library Granted Patent US 12,495,039
Granted Patent B2
US 12,495,039 · App. 17/906,866 · Granted Dec 9, 2025

Integrated authentication system and method

Inventors: Frederik Siegmund (Abingdon, GB); Rajkumar Kannan (Houston, TX); Waikhom Imocha Singh (Pune, IN)
Assignee: SCHLUMBERGER TECHNOLOGY CORPORATION
H04L63/0846H04L63/0876H04L67/141
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,495,039
App. No.
17/906,866
Granted
Dec 9, 2025
Kind
B2
Abstract

A method may include sending, to a provisioning service and by an application executing on a virtual machine, a local authentication token for a user of the virtual machine. The provisioning service may use the local authentication token to generate a portable access token. The method may further include receiving, from the provisioning service, the portable access token, and launching, by the application and for the user, a session in a web service by sending the portable access token to an application programming interface (API) of the web service.

Claims (59)

1 . A method comprising:

receiving, by a user interface service and from a user, login credentials;

generating, by the user interface service and using the login credentials, a refresh token for the user;

sending, to a provisioning service and by an application executing on a virtual machine comprising instructions stored on a non-transitory computer readable medium and executed by a processor, a local authentication token for the user of the virtual machine, wherein the provisioning service uses the local authentication token to generate a portable access token;

receiving, from the provisioning service, the portable access token;

launching, by the application and for the user, a session in a web service by sending the portable access token to an application programming interface (API) of the web service; and

sending, by the user interface service and to the provisioning service, the refresh token for the user, wherein the provisioning service generates the virtual machine using the refresh token and validates first information included in the local authentication token as matching second information in the refresh token in generating the portable access token, wherein the portable access token comprises a data structure that stores information used for authentication to the web service, and wherein the portable access token has a first period of validity and a digital signature, wherein the first period of validity is less than a second period of validity of the local authentication token and a third period of validity of the refresh token, wherein the second period of validity of the local authentication token and the third period of validity of the refresh token comprise different periods of validity with respect to one another.

2 . The method of claim 1 , further comprising:

receiving, from the user and by the API of the web service, the login credentials and a request for a status of the session in the web service; and

sending, to the user and by the API of the web service, the status of the session in the web service.

3 . The method of claim 2 , wherein the web service is a simulation tool, wherein the simulation tool executes a simulation for the user, and wherein the status comprises a state of the simulation.

4 . The method of claim 1 , further comprising:

sending, to the provisioning service, a request to generate a new portable access token with a new expiration time when an expiration time of the portable access token is within a threshold of a current time, wherein the provisioning service generates the new portable access token; and

receiving, from the provisioning service, the new portable access token.

5 . The method of claim 4 , wherein the provisioning service further:

in response to receiving the request from the application to update the portable access token, validates an Internet Protocol (IP) address of the virtual machine.

6 . The method of claim 1 , further comprising:

obtaining, by the application, a URL of the API from metadata stored in the virtual machine, wherein the session is launched using the URL of the API.

7 . The method of claim 1 , wherein the local authentication token has a scope restricted to accessing resources within the virtual machine.

8 . The method of claim 1 , wherein the provisioning service further:

generates the portable access token using metadata stored in the virtual machine, wherein the metadata comprises information that authenticates the virtual machine to the web service.

9 . A system comprising:

a computer processor;

a non-transitory computer readable medium coupled to the computer processor;

a virtual machine comprising instructions stored on the non-transitory computer readable medium and executing on the computer processor;

an application executing on the virtual machine and configured to:

send, to a provisioning service, a local authentication token for a user of the virtual machine,

receive, from the provisioning service, a portable access token, and

launch, for the user, a session in a web service by sending the portable access token to an application programming interface (API) of the web service; and

a user interface service configured to:

receive, from the user, login credentials,

generate, using the login credentials, a refresh token for the user; and

send, to the provisioning service, the refresh token for the user;

the provisioning service configured to:

generate, from the local authentication token, the portable access token;

generate, using the refresh token for the user, the virtual machine; and

validate first information included in the local authentication token as matching second information in the refresh token in generating the portable access token, wherein the portable access token comprises a data structure that stores information used for authentication to the web service, and wherein the portable access token has a first period of validity and a digital signature, wherein the first period of validity is less than a second period of validity of the local authentication token and a third period of validity of the refresh token, wherein the second period of validity of the local authentication token and the third period of validity of the refresh token comprise different periods of validity with respect to one another.

10 . The system of claim 9 , wherein the web service is configured to:

receive, from the user and by the API of the web service, the login credentials and a request for a status of the session in the web service, and

send, to the user and by the API of the web service, the status of the session in the web service.

11 . The system of claim 10 , wherein the web service is a simulation tool, wherein the simulation tool executes a simulation for the user, and wherein the status comprises a state of the simulation.

12 . The system of claim 9 , wherein the provisioning service is further configured to:

receive a request from the application to generate a new portable access token with a new expiration time when an expiration time of the portable access token is within a threshold of a current time,

generate the new portable access token, and

send, to the application, the new portable access token.

13 . The system of claim 10 , wherein the provisioning service is further configured to:

in response to receiving the request from the application to update the portable access token, validate an Internet Protocol (IP) address of the virtual machine.

14 . The system of claim 9 , wherein the application is further configured to:

obtain a URL of the API from metadata stored in the virtual machine, wherein the session is launched using the URL of the API.

15 . The system of claim 9 , wherein the local authentication token has a scope restricted to accessing resources within the virtual machine.

16 . The system of claim 9 , wherein the provisioning service is further configured to:

generate the local authentication token using metadata stored in the virtual machine, wherein the metadata comprises information that authenticates the virtual machine to the web service.

17 . A non-transitory computer readable medium comprising instructions that, when executed by a virtual machine executing on a computer processor, perform operations comprising:

sending, to a provisioning service and by an application executing on the virtual machine, a local authentication token for a user of the virtual machine, wherein the provisioning service uses the local authentication token to generate a portable access token;

receiving, from the provisioning service, the portable access token; and

launching, by the application and for the user, a session in a web service by sending the portable access token to an application programming interface (API) of the web service, wherein the provisioning service further:

receives a refresh token for the user;

generates, using the refresh token for the user, the virtual machine; and

validates first information included in the local authentication token as matching second information in the refresh token in generating the portable access token, wherein the portable access token comprises a data structure that stores information used for authentication to the web service, and wherein the portable access token has a first period of validity and a digital signature, wherein the first period of validity is less than a second period of validity of the local authentication token and a third period of validity of the refresh token, wherein the second period of validity of the local authentication token and the third period of validity of the refresh token comprise different periods of validity with respect to one another.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 27, 2022
From: SIEGMUND, FREDERIK; KANNAN, RAJKUMAR; SINGH, WAIKHOM IMOCHA
To: SCHLUMBERGER TECHNOLOGY CORPORATION
Reel/Frame 061221/0528 →
Continuity (2)
Provisional Application 62994713 · Mar 25, 2020
Related Publication 20230126588A1 · Apr 27, 2023
References Cited (26)
US 8800009B1 · Beda, III · 2014 [cited by examiner]
US 9646151B2 · Miyakawa · 2017 [cited by examiner]
US 9838430B1 · Roth · 2017 [cited by applicant]
US 10742655B2 · Taylor · 2020 [cited by examiner]
US 11190514B2 · Dube · 2021 [cited by examiner]
US 11757635B2 · Muhanna · 2023 [cited by examiner]
US 11941643B2 · Rungta · 2024 [cited by examiner]
US 20120060210A1 · Baker · 2012 [cited by examiner]
US 20120089833A1 · Jirka et al. · 2012 [cited by applicant]
US 20140373126A1 · Hussain · 2014 [cited by examiner]
US 20160036794A1 · Adhya · 2016 [cited by examiner]
US 20170149807A1 · Schilling · 2017 [cited by examiner]
US 20170310771A1 · Lewis · 2017 [cited by examiner]
US 20180060456A1 · Phatak · 2018 [cited by examiner]
US 20180123793A1 · Thibadeau, Sr. et al. · 2018 [cited by applicant]
US 20190036901A1 · Brooker · 2019 [cited by applicant]
US 20210288808A1 · Bahety · 2021 [cited by examiner]
US 20210344670A1 · Dachev · 2021 [cited by examiner]
US 20220239483A1 · Sugarev · 2022 [cited by examiner]
EP 2383956A2 · 2011 [cited by applicant]
JP 2014099030A · 2014 [cited by applicant]
JP 2017188130A · 2017 [cited by applicant]
WO 2018118733A2 · 2018 [cited by applicant]
Search Report and Written Opinion of International Patent Application No. PCT/US2021/023936 dated Jul. 15, 2021, 8 pages. [cited by applicant]
International Preliminary Report on Patentability of International Patent Application No. PCT/US2021/023936 dated Oct. 6, 2022, 5 pages. [cited by applicant]
Extended Search Report issued in European Patent Application No. 21775948.9 dated Feb. 27, 2024, 10 pages. [cited by applicant]