Merge pull request #12627 from vician/tss-domain

Added domain entry and authorizer for TSS
This commit is contained in:
Hao Liu
2023-04-12 16:33:46 -04:00
committed by GitHub

View File

@@ -1,7 +1,7 @@
from .plugin import CredentialPlugin from .plugin import CredentialPlugin
from django.utils.translation import gettext_lazy as _ from django.utils.translation import gettext_lazy as _
from thycotic.secrets.server import PasswordGrantAuthorizer, SecretServer, ServerSecret from thycotic.secrets.server import DomainPasswordGrantAuthorizer, PasswordGrantAuthorizer, SecretServer, ServerSecret
tss_inputs = { tss_inputs = {
'fields': [ 'fields': [
@@ -17,6 +17,12 @@ tss_inputs = {
'help_text': _('The (Application) user username'), 'help_text': _('The (Application) user username'),
'type': 'string', 'type': 'string',
}, },
{
'id': 'domain',
'label': _('Domain'),
'help_text': _('The (Application) user domain'),
'type': 'string',
},
{ {
'id': 'password', 'id': 'password',
'label': _('Password'), 'label': _('Password'),
@@ -44,7 +50,10 @@ tss_inputs = {
def tss_backend(**kwargs): def tss_backend(**kwargs):
authorizer = PasswordGrantAuthorizer(kwargs['server_url'], kwargs['username'], kwargs['password']) if 'domain' in kwargs:
authorizer = DomainPasswordGrantAuthorizer(kwargs['server_url'], kwargs['username'], kwargs['password'], kwargs['domain'])
else:
authorizer = PasswordGrantAuthorizer(kwargs['server_url'], kwargs['username'], kwargs['password'])
secret_server = SecretServer(kwargs['server_url'], authorizer) secret_server = SecretServer(kwargs['server_url'], authorizer)
secret_dict = secret_server.get_secret(kwargs['secret_id']) secret_dict = secret_server.get_secret(kwargs['secret_id'])
secret = ServerSecret(**secret_dict) secret = ServerSecret(**secret_dict)