Last active
September 25, 2017 23:38
-
-
Save kporangehat/1b42d44d19472d52dcb2 to your computer and use it in GitHub Desktop.
Shotgun Toolkit Authentication examples
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Import Toolkit so we can access to Toolkit specific features. | |
import sgtk | |
# Import the ShotgunAuthenticator from the tank_vendor.shotgun_authentication | |
# module. This class allows you to authenticate either programmatically or, in this | |
# case, interactively. | |
from tank_vendor.shotgun_authentication import ShotgunAuthenticator | |
# Instantiate the CoreDefaultsManager. This allows the ShotgunAuthenticator to | |
# retrieve the site, proxy and optional script_user credentials from shotgun.yml | |
cdm = sgtk.util.CoreDefaultsManager() | |
# Instantiate the authenticator object, passing in the defaults manager. | |
authenticator = ShotgunAuthenticator(cdm) | |
# Optionally clear the current user if you've already logged in before. | |
authenticator.clear_default_user() | |
# Get an authenticated user. In this scenario, since we've passed in the | |
# CoreDefaultsManager, the code will first look to see if there is a script_user inside | |
# shotgun.yml. If there isn't, the user will be prompted for their username, | |
# password and optional 2-factor authentication code. If a QApplication is | |
# available, a UI will pop-up. If not, the credentials will be prompted | |
# on the command line. The user object returned encapsulates the login | |
# information. | |
user = authenticator.get_user() | |
# print "User is '%s'" % user | |
# Tells Toolkit which user to use for connecting to Shotgun. Note that this should | |
# always take place before creating a Sgtk instance. | |
sgtk.set_authenticated_user(user) | |
# | |
# Add your app code goes here... | |
# | |
# When you are done, you could optionally clear the current user. Doing so | |
# however, means that the next time the script is run, the user will be prompted | |
# for his or her credentials again. You should probably avoid doing this in | |
# order to provide a user experience that is as frictionless as possible. | |
authenticator.clear_default_user() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Import Toolkit so we can access to Toolkit specific features. | |
import sgtk | |
# Import the ShotgunAuthenticator from the tank_vendor.shotgun_authentication | |
# module. This class allows you to authenticate either interactively or, in this | |
# case, programmatically. | |
from tank_vendor.shotgun_authentication import ShotgunAuthenticator | |
# Instantiate the CoreDefaultsManager. This allows the ShotgunAuthenticator to | |
# retrieve the site, proxy and optional script_user credentials from shotgun.yml | |
cdm = sgtk.util.CoreDefaultsManager() | |
# Instantiate the authenticator object, passing in the defaults manager. | |
authenticator = ShotgunAuthenticator(cdm) | |
# Create a user programmatically using the script's key. | |
user = authenticator.create_script_user( | |
api_script="Toolkit", | |
api_key="4e48f....<use the key from your Shotgun site>" | |
) | |
# print "User is '%s'" % user | |
# Tells Toolkit which user to use for connecting to Shotgun. | |
sgtk.set_authenticated_user(user) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment