cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Godlees
Frequent Visitor

Get secure Credentials

Hello everyone,

 

I been searching on the tool, but i cant find any actions to make me get the credencials from the windows credentials, or from a cloud for example.

 

Can i get the credentials of the costumer from a secure way and not write them to the tool?

 

Any help is welcome !

 

Thanks !

7 REPLIES 7
sakula1996
Continued Contributor
Continued Contributor

Hi @Godlees ,

 

You can use input variable and change data type to sensitive text

 

Hope this helps 🙂

sakula1996_0-1615581911638.png

 

Thanks,

-Sachin

 

burque505
Helper V
Helper V

@Godlees, you might be able to adapt my Robin code for using Windows credentials with Python. 

I apologize for not having more time at the moment, but I will try to adapt it for PAD myself in the next day or so. As a newer version Robin underpins PAD, I'm hoping it will not be difficult.

Regards,

burque505

@Godlees, this post may help you if you have Python 3 installed. If not, I am going to try to adapt it to Python 2 so no DOS command is required. I prefer Python 3, but that may not be an option for all.

Prerequisite: User must have a Generic Credential installed for Box.com

 

TASK: Use a Generic Credential to log into Box.com at 'https://account.box.com/login/'. Populate the email and password fields, click submit.

 

(You will of course need to create your own appmask by creating and selecting UI Elements.)

 

SCREENSHOT OF FLOW:

BoxCredsFlow.png

Shots of flow, step by step, except for launching Chrome and navigating to 'https://account.box.com/login/':

Set Python path:

setpypath.png

Set Python script path:

setscriptpath.png

Run Python from the DOS prompt, storing its output into '%PythonOutput%'.

doscommand.png

Split the output with custom delimiter ',' into CredList.

split_python_output.png

Set email to CredList[0]:

credlist0.png

Set password to CredList[1]:

credlist1.png

Fill in email field:

fill_email.png

Click 'Next':

click_next.png

Fill in the password with CredList[1]:

credlist1.png

Click 'Submit':

click_submit.png

 

Here is the content of the Python script, only slightly modified from that of mrh1997's script. 

 

 

 

#!python3
"""
Access windows credentials
"""
from typing import Tuple
import ctypes as CT
import ctypes.wintypes as WT

CRED_TYPE_GENERIC = 0x01

LPBYTE = CT.POINTER(WT.BYTE)
LPWSTR = WT.LPWSTR
LPCWSTR = WT.LPWSTR
class CREDENTIAL_ATTRIBUTE(CT.Structure):
    _fields_ = [
        ('Keyword', LPWSTR),
        ('Flags', WT.DWORD),
        ('ValueSize', WT.DWORD),
        ('Value', LPBYTE)]
PCREDENTIAL_ATTRIBUTE = CT.POINTER(CREDENTIAL_ATTRIBUTE)
class CREDENTIAL(CT.Structure):
    _fields_ = [
        ('Flags', WT.DWORD),
        ('Type', WT.DWORD),
        ('TargetName', LPWSTR),
        ('Comment', LPWSTR),
        ('LastWritten', WT.FILETIME),
        ('CredentialBlobSize', WT.DWORD),
        ('CredentialBlob', LPBYTE),
        ('Persist', WT.DWORD),
        ('AttributeCount', WT.DWORD),
        ('Attributes', PCREDENTIAL_ATTRIBUTE),
        ('TargetAlias', LPWSTR),
        ('UserName', LPWSTR)]
PCREDENTIAL = CT.POINTER(CREDENTIAL)

advapi32 = CT.WinDLL('Advapi32.dll')
advapi32.CredReadA.restype = WT.BOOL
advapi32.CredReadA.argtypes = [LPCWSTR, WT.DWORD, WT.DWORD, CT.POINTER(PCREDENTIAL)]


def GetGenericCredential(name:str) -> Tuple[str, str]:
    """
    Returns a Tuple of Name and Password of a Generic Windows Credential
    Uses bytes in Py3 and str in Py2 for url, name and password.
    """
    cred_ptr = PCREDENTIAL()
    if advapi32.CredReadW(name, CRED_TYPE_GENERIC, 0, CT.byref(cred_ptr)):
        username = cred_ptr.contents.UserName
        cred_blob = cred_ptr.contents.CredentialBlob
        cred_blob_size = cred_ptr.contents.CredentialBlobSize
        cred_str = CT.string_at(cred_blob, cred_blob_size)
        password = cred_str.decode('utf-16le', errors='ignore')
        advapi32.CredFree(cred_ptr)
        return username, password
    else:
        raise IOError("Failure reading credential")


def main():
    name, pwd = GetGenericCredential('https://account.box.com/login/')
    print(name + ',' + pwd)


if __name__ == '__main__':
    main()

 

 

 

For the curious, here is the content of my 'script.robin' (edited to remove my username):

 

 

 

IMPORT 'C:\\Users\\You\\AppData\\Local\\Microsoft\\Power Automate Desktop\\Console\\Workspace\\0f5103bd-6a64-4fab-8e98-1100ab7e4517\\controlRepo.appmask' AS appmask
IMPORT 'C:\\Users\\You\\AppData\\Local\\Microsoft\\Power Automate Desktop\\Console\\Workspace\\0f5103bd-6a64-4fab-8e98-1100ab7e4517\\imageRepo.imgrepo' AS imgrepo


WebAutomation.LaunchChrome Url: $'''https://account.box.com/login''' WindowState: WebAutomation.BrowserWindowState.Maximized ClearCache: False ClearCookies: False BrowserInstance=> Browser
SET pythonpath TO $'''\"C:\\Program Files\\Python37\\python.exe\"'''
SET pyscriptpath TO $'''C:\\Users\\HP6300\\Documents\\PAD\\wincred\\box.py'''
System.RunDOSCommand DOSCommandOrApplication: $'''%pythonpath% %pyscriptpath%''' StandardOutput=> PythonOutput StandardError=> PythonErrorOutput ExitCode=> PythonExitCode
Text.SplitWithDelimiter Text: PythonOutput CustomDelimiter: $''',''' IsRegEx: False Result=> CredList
SET email TO CredList[0]
SET password TO CredList[1]
WebAutomation.FormFilling.PopulateTextFieldCloseDialog BrowserInstance: Browser Control: appmask['Web Page \'https://account.box.com/login\'']['<input:text> \'login-email\''] Text: email EmulateTyping: True UnfocusAfterPopulate: False
WebAutomation.Click BrowserInstance: Browser Control: appmask['Web Page \'https://account.box.com/login\'']['<button> \'login-submit\'']
WebAutomation.FormFilling.PopulateTextField BrowserInstance: Browser Control: appmask['Web Page \'https://account.box.com/login?redirect_url=%2F\'']['<input:password> \'password-login\''] Text: password EmulateTyping: True UnfocusAfterPopulate: False
WebAutomation.Click BrowserInstance: Browser Control: appmask['Web Page \'https://account.box.com/login?redirect_url=%2F\'']['<button> \'login-submit-password\'']

 

 

Regards,

burque505

 

Hello @sakula1996 , sorry for answer today, in this case. The client need to put your credentials every time of the bot run?

 

I dont like for that reason, i need something where the bot get the credentials and dont interact with the client or someone.

Hello @burque505 thank you so much for answer.

 

The only i dont understand is why you use box? and what credentials i have to store in that cloud?

 

Thanks !

Hi @Godlees, the use of Box is only intended as an example. You can substitute any site that requires a username and password.

 

The credentials are stored on the user's computer using Windows Credential Manager so the bot can access them without requiring the user to enter them.

 

Regards,

burque505

sakula1996
Continued Contributor
Continued Contributor

Hi @Godlees ,

 

You might already figured out the issue.

But, here is something I got:

If you're using "Populate text field on web page" action or "Populate text field in window" action or "Send Keys" action, you can use sensitive text input by clicking on the little box icon towards top left corner.

 

 

Hope this helps 🙂

 

sakula1996_0-1616006915746.png

 

sakula1996_1-1616006989798.png

 

 

Helpful resources

Announcements

Power Platform Connections - Episode 7 | March 30, 2023

Episode Seven of Power Platform Connections sees David Warner and Hugo Bernier talk to Microsoft MVP Dian Taylor, alongside the latest news, product reviews, and community blogs.     Use the hashtag #PowerPlatformConnects on social media for a chance to have your work featured on the show!      Show schedule in this episode:    0:00 Cold Open 00:30 Show Intro 01:02 Dian Taylor Interview 18:03 Blogs & Articles 26:55 Outro & Bloopers    Check out the blogs and articles featured in this week’s episode:    https://francomusso.com/create-a-drag-and-drop-experience-to-upload-case-attachments @crmbizcoach https://www.youtube.com/watch?v=G3522H834Ro​/  @pranavkhuranauk https://github.com/pnp/powerapps-designtoolkit/tree/main/materialdesign%20components @MMe2K​ https://2die4it.com/2023/03/27/populate-a-dynamic-microsoft-word-template-in-power-automate-flow/ @StefanS365 https://d365goddess.com/viva-sales-administrator-settings/ @D365Goddess https://marketplace.visualstudio.com/items?itemName=megel.mme2k-powerapps-helper#Visualize_Dataverse_Environments @MMe2K    Action requested:  Feel free to provide feedback on how we can make our community more inclusive and diverse.    This episode premiered live on our YouTube at 12pm PST on Thursday 30th March 2023.    Video series available at Power Platform Community YouTube channel.    Upcoming events:  Business Applications Launch – April 4th – Free and Virtual! M365 Conference - May 1-5th - Las Vegas Power Apps Developers Summit – May 19-20th - London European Power Platform conference – Jun. 20-22nd - Dublin Microsoft Power Platform Conference – Oct. 3-5th - Las Vegas    Join our Communities:  Power Apps Community Power Automate Community Power Virtual Agents Community Power Pages Community    If you’d like to hear from a specific community member in an upcoming recording and/or have specific questions for the Power Platform Connections team, please let us know. We will do our best to address all your requests or questions.       

Announcing | Super Users - 2023 Season 1

Super Users – 2023 Season 1    We are excited to kick off the Power Users Super User Program for 2023 - Season 1.  The Power Platform Super Users have done an amazing job in keeping the Power Platform communities helpful, accurate and responsive. We would like to send these amazing folks a big THANK YOU for their efforts.      Super User Season 1 | Contributions July 1, 2022 – December 31, 2022  Super User Season 2 | Contributions January 1, 2023 – June 30, 2023    Curious what a Super User is? Super Users are especially active community members who are eager to help others with their community questions. There are 2 Super User seasons in a year, and we monitor the community for new potential Super Users at the end of each season. Super Users are recognized in the community with both a rank name and icon next to their username, and a seasonal badge on their profile.  Power Apps  Power Automate  Power Virtual Agents  Power Pages  Pstork1*  Pstork1*  Pstork1*  OliverRodrigues  BCBuizer  Expiscornovus*  Expiscornovus*  ragavanrajan  AhmedSalih  grantjenkins  renatoromao    Mira_Ghaly*  Mira_Ghaly*      Sundeep_Malik*  Sundeep_Malik*      SudeepGhatakNZ*  SudeepGhatakNZ*      StretchFredrik*  StretchFredrik*      365-Assist*  365-Assist*      cha_cha  ekarim2020      timl  Hardesh15      iAm_ManCat  annajhaveri      SebS  Rhiassuring      LaurensM  abm      TheRobRush  Ankesh_49      WiZey  lbendlin      Nogueira1306  Kaif_Siddique      victorcp  RobElliott      dpoggemann  srduval      SBax  CFernandes      Roverandom  schwibach      Akser  CraigStewart      PowerRanger  MichaelAnnis      subsguts  David_MA      EricRegnier  edgonzales      zmansuri  GeorgiosG      ChrisPiasecki  ryule      AmDev  fchopo      phipps0218  tom_riha      theapurva  takolota     Akash17  momlo     BCLS776  Shuvam-rpa     rampprakash  ScottShearer     Rusk  ChristianAbata     cchannon  Koen5     a33ik  Heartholme     AaronKnox  okeks      Matren   David_MA     Alex_10        Jeff_Thorpe        poweractivate        Ramole        DianaBirkelbach        DavidZoon        AJ_Z        PriyankaGeethik        BrianS        StalinPonnusamy        HamidBee        CNT        Anonymous_Hippo        Anchov        KeithAtherton        alaabitar        Tolu_Victor        KRider        sperry1625        IPC_ahaas      zuurg    rubin_boer   cwebb365   Dorrinda   G1124   Gabibalaban   Manan-Malhotra   jcfDaniel   WarrenBelz   Waegemma   drrickryp   GuidoPreite    If an * is at the end of a user's name this means they are a Multi Super User, in more than one community. Please note this is not the final list, as we are pending a few acceptances.  Once they are received the list will be updated. 

Register now for the Business Applications Launch Event | Tuesday, April 4, 2023

Join us for an in-depth look into the latest updates across Microsoft Dynamics 365 and Microsoft Power Platform that are helping businesses overcome their biggest challenges today.   Find out about new features, capabilities, and best practices for connecting data to deliver exceptional customer experiences, collaborating, and creating using AI-powered capabilities, driving productivity with automation—and building towards future growth with today’s leading technology.   Microsoft leaders and experts will guide you through the full 2023 release wave 1 and how these advancements will help you: Expand visibility, reduce time, and enhance creativity in your departments and teams with unified, AI-powered capabilities.Empower your employees to focus on revenue-generating tasks while automating repetitive tasks.Connect people, data, and processes across your organization with modern collaboration tools.Innovate without limits using the latest in low-code development, including new GPT-powered capabilities.    Click Here to Register Today!    

Check out the new Power Platform Communities Front Door Experience!

We are excited to share the ‘Power Platform Communities Front Door’ experience with you!   Front Door brings together content from all the Power Platform communities into a single place for our community members, customers and low-code, no-code enthusiasts to learn, share and engage with peers, advocates, community program managers and our product team members. There are a host of features and new capabilities now available on Power Platform Communities Front Door to make content more discoverable for all power product community users which includes ForumsUser GroupsEventsCommunity highlightsCommunity by numbersLinks to all communities Users can see top discussions from across all the Power Platform communities and easily navigate to the latest or trending posts for further interaction. Additionally, they can filter to individual products as well.   Users can filter and browse the user group events from all power platform products with feature parity to existing community user group experience and added filtering capabilities.     Users can now explore user groups on the Power Platform Front Door landing page with capability to view all products in Power Platform.      Explore Power Platform Communities Front Door today. Visit Power Platform Community Front door to easily navigate to the different product communities, view a roll up of user groups, events and forums.

Microsoft Power Platform Conference | Registration Open | Oct. 3-5 2023

We are so excited to see you for the Microsoft Power Platform Conference in Las Vegas October 3-5 2023! But first, let's take a look back at some fun moments and the best community in tech from MPPC 2022 in Orlando, Florida.   Featuring guest speakers such as Charles Lamanna, Heather Cook, Julie Strauss, Nirav Shah, Ryan Cunningham, Sangya Singh, Stephen Siciliano, Hugo Bernier and many more.   Register today: https://www.powerplatformconf.com/   

Users online (3,139)