Beispiel #1
0
def oauth_client_B(app, request, db_session):
    """
    Create a second, different OAuth2 (confidential) client and add it to the
    database along with a test user for the client.
    """
    url = "https://oauth-test-client-B.net"
    client_id = "test-client-B"
    client_secret = fence.utils.random_str(50)
    hashed_secret = bcrypt.hashpw(client_secret.encode("utf-8"),
                                  bcrypt.gensalt()).decode("utf-8")

    test_user = db_session.query(
        models.User).filter_by(username="******").first()
    if not test_user:
        test_user = models.User(username="******", is_admin=False)
        db_session.add(test_user)
    db_session.add(
        models.Client(
            client_id=client_id,
            client_secret=hashed_secret,
            user=test_user,
            allowed_scopes=["openid", "user", "fence"],
            redirect_uris=[url],
            description="",
            is_confidential=True,
            name="testclientb",
            grant_types=["authorization_code", "refresh_token"],
        ))
    db_session.commit()

    return Dict(client_id=client_id, client_secret=client_secret, url=url)
Beispiel #2
0
def test_user_b(db_session):
    test_user = db_session.query(models.User).filter_by(username="******").first()
    if not test_user:
        test_user = models.User(username="******", is_admin=False)
        db_session.add(test_user)
        db_session.commit()
    return Dict(username="******", user_id=test_user.id)
Beispiel #3
0
def user_with_fence_provider(app, request, db_session):
    """
    Create a second, different OAuth2 (confidential) client and add it to the
    database along with a test user for the client.
    """
    fence_provider = (db_session.query(
        models.IdentityProvider).filter_by(name="fence").first())
    if not fence_provider:
        fence_provider = models.IdentityProvider(name="fence")
        db_session.add(fence_provider)
        db_session.commit()

    test_user = (db_session.query(
        models.User).filter_by(username="******").first())
    if test_user:
        test_user.idp_id = fence_provider.id
    else:
        test_user = models.User(username="******",
                                is_admin=False,
                                idp_id=fence_provider.id)
        db_session.add(test_user)

    db_session.commit()

    return test_user
Beispiel #4
0
def oauth_client_B(app, request, db_session):
    """
    Create a second, different OAuth2 client and add it to the database along
    with a test user for the client.
    """
    url = 'https://oauth-test-client-B.net'
    client_id = 'test-client-B'
    client_secret = fence.utils.random_str(50)
    hashed_secret = bcrypt.hashpw(client_secret, bcrypt.gensalt())

    test_user = (
        db_session
        .query(models.User)
        .filter_by(username='******')
        .first()
    )
    if not test_user:
        test_user = models.User(username='******', is_admin=False)
        db_session.add(test_user)
    db_session.add(models.Client(
        client_id=client_id, client_secret=hashed_secret, user=test_user,
        allowed_scopes=['openid', 'user'], _redirect_uris=url, description='',
        is_confidential=True, name='testclientb'
    ))
    db_session.commit()

    return Dict(client_id=client_id, client_secret=client_secret, url=url)
Beispiel #5
0
def test_user_long(db_session):
    test_user = (db_session.query(models.User).filter_by(
        username="******").
                 first())
    if not test_user:
        test_user = models.User(
            username="******",
            is_admin=False,
        )
        db_session.add(test_user)
        db_session.commit()
    return Dict(
        username="******",
        user_id=test_user.id,
    )